0
$\begingroup$

I want to animate this propeller spinning in Blender 2.8. I have oriented the local axis of rotation as described here.

Here are the reference images at a larger size

It appears to rotate correctly here

So, it appears to rotate correctly here

Then I keyframe the rotation I keyframe the rotation

The resulting playback is a very chaotic rotation on a different axis

The resulting playback is a very chaotic rotation on a different axis

Any clarity on what I am not understanding about this process is greatly appreciated. Thanks.

$\endgroup$
  • 1
    $\begingroup$ maybe this answer will help: blender.stackexchange.com/questions/129834/… $\endgroup$ – moonboots Apr 23 at 7:23
  • 1
    $\begingroup$ actually your propeller is not aligned with the global axis. When you animate it only considers the global axis, not any local axis. If you want to rotate a propeller on a tilted axis you need to first align it on the global axis, rotate it, then parent it to an empty, and tilt the empty. $\endgroup$ – moonboots Apr 23 at 7:40
  • $\begingroup$ thank you, moonboots. This is making more sense now. I'll post what finally worked for me. $\endgroup$ – John H Apr 24 at 5:49
2
$\begingroup$

Rotation at odd angle -

Whilst I concur with the comments above, I remember doing this at some previous time.

The cube, shaft and 'propeller' here were added at the default location 0,0,0 and at the default straight x,y,z angle. I'm not sure this matters.

The shaft and 'prop' were parented to the cube.

To experiment, the cube was then rotated at around 45 degrees in all 3 axis'.

-=============-

WARNING - Do not use CTL-A (apply) on any of the 3 components.

And for info - Keyframing as mentioned below was always done by hovering the mouse in the locatio/rotation slots at right and pressing "i" .

-==============-

The "Orientation" menu at bottom of window was then switched to "Normal".

Fearing a manual entry in the prop's X axis would be applied globally, after keyframing a zero in it's X rotation slot at frame 1, I advanced the timeline cursor to frame 80 and rotated the prop several times with the keys RXX. This was the (normals) axis that aligned with the shaft. The mouse was used to drag the actual rotate. That was then keyframed and it worked fine.

I'm not sure if this rotation experiment was necessary but it did provide reassurance.

A more adventurous rotation was then manually entered into the prop's X rotation slot at right: -36000 at frame 80. (100 rotations over 80 frames)

When run the animation rotated correctly.

The cube's location and attitude were then changed and keyframed and everything still remained stable. An animation speed of 120 fps was used to check this.

-==============-

To conclude and whilst not recommended, when necessary however it appears you can get away with perpendicular rotation at odd angles, in Vers 2.77a at least.

The Blend file is available on request but the key to it's success is probably due more to the order and manner components are added, rotated, and keyframed.

There were no active modifiers or constraints used apart from parenting.

It shouldn't make any difference but the above was rendered with OpenGL. Further, when CTL-A was used, everything went haywire.

$\endgroup$
  • $\begingroup$ Thank you for this example Edgel3D. I saw your solution after I had started work on my posted solution. I will definitely try this next time as it looks to work great. I had to get my local axis correct as I noted in my answer. For some reason the other transform orientations were not working. Maybe "Normal" could have worked? just didn't get to that option. I am working in Blender 2.8. Seems there are workarounds but the path to them was finding that needle in a haystack(exchange) lol. $\endgroup$ – John H Apr 24 at 6:18
0
$\begingroup$

Your problem is that the animation is using the global coordinates, and so it rotates automatically keyframes on all axes, and messes up the animation. Check out this post, Why are keyframes in global coords, instead of local coords? (Blender 2.70a) it seems to ask the same question, and the solution of changing the type of rotation mode seemed to work on your file.

P.S. great model

$\endgroup$
  • $\begingroup$ Hi, avatar! When you said "solution of changing the type of rotation mode seemed to work on your file", do you mean you got the animation to correctly rotate? I looked at the post you referenced and I am still trying to wrap my head around those methods. I also watched the youtube video series that is referenced in the answer to that post youtu.be/wCigM5Q3uZg and now I think I know what to do but am still trying to get it to work either using axis-angle or Euler methods. It still spins off local axis using ZXY Euler and locking X and Y coordinates. Thanks for any clarification. $\endgroup$ – John H Apr 23 at 1:08
0
$\begingroup$

Okay, I got it figured out with help here and the help of several other sources as noted. I had to make a new local origin as described here using the answer at the bottom to make a helper object and basically borrow its origin (the propeller's original local origin got messed up somehow). Then I used an object constraint method to animate it as illustrated here. I then used the answer here to animate it rotating indefinitely. Whew! Thank you all again! I am so stoked! fixed propeller animation

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.