Monday, October 12, 2009

Layers of Control 2

Ok, to clarify what I said in previous post, will sketch a brief example to compare Grayson Chalmers rigs method with built Max constraints. I'll do this just to be sure so someone dont say I'm not right. Maybe Grayson think so he has discovered new and creative methods? The truth is that Max has a suitable controllers for the cases covered in him video tutorial.

So there is my example (see the video for final result). Here I use Link Constraint for the ball (sphere) and 12 surrounding rods (Line shapes) for its targets. Also LookAt Constraint for the arrow object (Line shape) and ball as its target. So you can finish this simple example - modeling plus animation for less then 5 minutes, and here no rigging or special setup needed. Well, only to setup the animation using Grayson rigs will take an hour or more.

(or download SWF flash video - 341 kb)

So, let for convenience, world center [0,0,0] to be the center for our "clock" device. Create Line with 2 knots with length = 20. Be sure it pivot is centered. Move it +60 by Y, ie to position [0,60,0]. Slide to frame 30, turn on Animation, and rotate it 180 degrees, and turn of AutoKey. I do this with the thought that we work of 30 frames per second.

Now you can create a Dummy or Point helper in the world center [0,0,0] to use it as rotation axis, and make new 11 independent copies (ie Clone type Copy) by using Angle snap tool. They must by 360 / 12 = 30, ie in 30 degrees. Also can do the same by next script:

for i=1 to 11 do (c = copy $; about [0,0,0] rotate c (i*30) z_axis)

What's next?... We need to move the keys for each spline object (rods). Select Line02, select its 2 keys end move them by 30 forward, so now it animation start from frame 30 (where Line01 animation ends) and end in frame 60. Select Line03 end move its keys 2 * 30 = 60 , end so on for all of the 12 objects. if you wish to speed up this procces by script:

select $*Line* -- select all splines
all = selection as array -- collect 'em
for i=2 to all.count do (moveKeys all[i].rotation.controller ((i-1)*30))

Now create a shpere with radius 5 and move it to [-16,60,0]. Go to frame 0 and from Animation menu add Link Constraint to it and pick Line01 as first target. Go to frame 30 and pick Line02, and so on, repeat this for all slidding by 30. Immportant: if you add new target at the same time (forget to move time slider), it will overwrite last existing target. So, as you see, even 12 targets in this case - whole task take a seconds.

Finally create another Line for arrow object. Align its first knot to [0,0,0], also and it pivot to [0,0,0]. move it second knot to [37,0,0]. Length more than 37 will intersect with the sphere. While "arrow" still selected, from Animation menu add LookAt Constraint and pick the sphere. This task also done. Play the animation.

I leave the conclusions to you :)

No comments:

Post a Comment

Thanks for your comment