#Cycle object prob.
12-Jun-94 15:09:36
Sb: #84341-#Cycle object prob.
Fm: Charles Blaquiere 76046,1756
To: Michael W. Towe 74364,1466
Michael,
I have a hunch that you've encountered the 180-degree problem. Imagine is a
keyframe-based program: set the start values, set the end values, and let
Imagine calculate all the in-betweens. If your start value is a rotation of 0
degrees, and the end value is 180 degrees, you have a problem. You see, 180
degrees and -180 degrees lead you to the same final position; given that
position, how is Imagine supposed to decide whether you wanted to go from 0 to
180 by moving through positive values, or 0 to -180 by moving through negative
values? The answer: Imagine can't. It'll make its best guess, which can change
depending on the circumstances of the moment. Sometimes Imagine will go from 0
to 180, other times from 0 to -180.
Imagine users should always be unambiguous when specifying keyframes. For
example, in your final keyframe, rotate the book cover 179 degrees rather than
180 — nobody will ever see the difference.
Another situation where this occurs is when you want to rotate an object 360
degrees. The final keyframe, at 360 degrees, is interpreted as 0 degrees, so
Imagine will tween from 0 to 0, and your object will not rotate. If you use 3
keyframes (start, midpoint, end) and set them to 0, 180, and 360 degrees, the
values are ambiguous and Imagine will probably rotate your object in a
ping-pong manner, rather than a full revolution. The solution here would be to
have 4 keyframes (start, 1/3, 2/3, end) and set rotation angles at 0, 120 , 240
(or -120, same thing), and 360 (or 0, same thing) degrees.
Blaq!