animating rotation

Hi all, How does an object rotate when animating using IPO-curves.
Is it around the global or local axis?
many thanks in advance.
grtz, doin

IPO curves display local data about the object, so animating an object’s RotX curve will change the objects animation along it’s local X axis.

animating an object’s RotX curve will change the objects animation along it’s local X axis.

That is what I thought too, until I tried it. It turns out that object IPOs represent global space, but relative to the parent.

Bones are local, but evaluated with quaternions - so they are hard to understand. Waylow provided the link to the best explanation I’ve heard on how they work yet :slight_smile:

ok, so I’ve got the answer i wanted, but it didn’t help me much, attached a .blend, i want to rotate the center1 and center2 pieces -180 degrees so they get turned upside down, but i want them to get turned in a normal fashion, without them going in every single direction, as it is now on center1., just turned around the global Y-axis.
thx for the fast reply from earlier though, if I advance a bit in my 3d-skills, I’ll probably get a use for that.


wooden plane-centerhelp.blend (589 KB)

I see what you mean in your blend, but after tweaking some IPOs and failing, I scratched it and started over, but then the rotation was really messed up. I opened up a new file and quickly re-created your scene and animated without any issues… something is strange. Hopefully someone can make sense of it!

feelgoodcomics, I did a test where I took Blender’s initial cube, rotated it a bit on the Z axis, and inserted a Rot keyfram on frame 1. At frame 31, I rotated the cube a bit on its local X axis, and inserted another Rot keyframe. The animation showed the cube rotating along its local X axis nicely. I checked the IPOs, and the only curve that changed was the RotX curve, so it seems the IPOs do work locally…

hmmm… strange. I know I tried doing that before and it didn’t work lol. I guess it works now, cool :slight_smile:

Okay I’m getting mixed results… sometimes the rotation is global, and sometimes it is local… I’m getting confused here.

Does anyone understand how Blender determines whether to use local or global ipo’s?

@ feelgoodcomics : I think you might want to rephrase to “it turns out that unparented object IPOs represent global space, but if the object is a child object them it’s IPOs are local”, i.e. the global/local distinction does not make a lot of sense when an object is not a child object .

Technically all objects in a scene are the children of the global/world or scene, but the last time I checked you couldn’t tilt the global scene easily, so you need a proxy sometimes to do that …

You can think of the QuatW curve as the mathematical equivalent of the proxy “tilt” for armature bones … among other things …

@ Renderer10 : You can always get the curves to behave “properly” if you only have 2 curves … if you gave your cube a slight initial rotation along the Y as well you will get wonky results (especially if you extrapolate around a particular axis) … Mind you the curves do have a local orientation, but relative to the global coordinates which does not allow for arbitrary tilts along a single local rotational axis, for that you still need a proxy parent currently in Blender …

@ Lord_Doin : What you are experiencing has very little to do with local/global orientations (it is relative to the global since it is not parented so no tilt, but your animation doesn’t need one), but the classic Gimbel lock problem encountered with Euler rotations .

You have an initial -90 degree rotation along the Z axis when you start your animation (most likely you simply positioned it that way for set up, and on the mirrored part a -180 rot), this means that the plane of rotation for both the Z and Y axes are now coplanar which is going to confuse Blender within a few keyframes when you begin to visually key it in the 3D view .

Because you seem to want the mechanical 90/180 degree rotation(s) which can cause Gimbel lock when done visually, it is best to use the Transform Properties panel and insert the rotation value manually at the proper keyframe along the axis you want first to rotate around .

Also remember the first rule of animating : clear any unwanted transform values (especially rotations) before you begin animating .

Hope this helps .

See my 360 Degree Rotations here
Some models are created in Blender and some other 3D Apps. But All the Animations, Texturing,rendering is done in Blender.

and how would I clear these transformations?

and how would I clear these transformations?

And how would I go about doing the above?

EDIT: found a workaround, though probably not the best ever. I use a bone to rotate the object on that axis, the rest of the movements are being done without the bone. Update on the .blend.

EDITEDIT:, the finished animation


wooden plane-centerhelp.blend (618 KB)

ah ha! That must be what I did that worked the first time, and then rotated all 3 the time after that. That makes sense…

Thanks VP :slight_smile: