I’m trying to understand the rotationX/Y/Z functions but the results are not consistent and wonder why not a single user had this problem except myself? (Perhaps, I need some simple basic knowledge for this:lol:)
Anyway, what I found is that rotationZ rotages always globally while rotationX is always local and rotationY is half local and half global.
It’s somewhat difficult to explain in words so I put my code (attachment) . Please have a look at and run (if you care;-P) it.
For example, if I rotate around X-axis a bit it perfectly rotates around X-axis and if try to rotate around Y-axis it doesn’t rotate around Y-axis, not globally nor Parent/Local, and if try to rotate around Z-Axis it rotates perfectly around the global Z-axis.
If you play around rotating X/Y/Z, you will clearly see what I mean.
I found if I try to rotate around X, it always rotates around the local X-axis perfectly.
If I try to rotate around Z, it always rotates around the Global Z-axis perfectly.
If I try to rotate around Y, it rotates with no rules.
Is it a bug? (if then why nobody found it yet?)
If not, why does it works that way? What did I miss?
Please help, I’m wrestling with this hardly and feeling I’m losing the wrestle.
=== part of the code I used ===
case 38: // UP
container.rotationX += 9;
break;
case 40: // DOWN
container.rotationX -= 9;
break;
case 39: // RIGHT
container.rotationY += 9;
break;
case 37: // LEFT
container.rotationY -= 9;
break;
case 33: // PAGE UP
container.rotationZ += 9;
break;
case 34: // PAGE DOWN
container.rotationZ -= 9;
break;
=========================