Maya tutorials:piston animation with constrain and driven key

| Comments (15)

maya tutorial animation with constrain and driven key
Make objects as figure above, and name them, piston, rod, cam.

maya tutorial animation with constrain and driven key

Create > Locator
and make locator1 the child of the cam

maya tutorial animation with constrain and driven key

Move the pivot point of rod to the place of the locator.

Select locator1 the rod, in this order.
In the Animation menu set Constrain > Point

If you Select locator1, then the rod will reverse in red.


Set keyframe and make the cam rotate 360 degrees.
It will became like animation above.

In same method, make locator2 child of rod,
constrain with piston.
It will became like animation above.

maya tutorial animation with constrain and driven key

Open the Set Driven Key Window.
Animate > Set driven key > Set squareMini

Select the cam、Load Driver
Select the rod、Load Driven
Select each rotateX

Rotate the cam in 0 degrees,
adjust the rotation of the rod,
and click the Key button.

Repeat the same procedure at 90,180,270,360 degrees

The rotation of the cam and the rod will become the following combinations.
The rod angle might be different depending on the modeling data.
cam 0 90 180 270 360
rod 0 -19 0 19 0

It completed.

The movement of the piston is transmitted to the cam in an actual piston.
Because I thought that it is practicing to change the rotation
into the vertical movement, I made it in this order.
It is also possible to change the vertical movement into the rotation
according to the same procedure.

Japanese article
Maya tutorials:piston animation with constrain and driven key

Copyright (C) 2009 by maya blog:3D CG labo, All Rights Reserved.


:) reflects the couple's low-key approach to their royal connections.

Thank you for your visiting my site and commenting.

But I am very sorry, I can't understand what you mean.


nice tutorial, but im stuck on the following:

Reverse each rotateX

what am i supposed to do here? I cant find any reverse options?

Reverse each rotateX
is equal to
Select each rotateX

I changed the description.
Thank you for your commenting

Hey thanks for the help, but im quite new to maya and still learning...

I cant get the last step right...

I have uploaded my file, maybe if you have some spare time you could look at it and fix the final step? Because i have tried every rotation / translation and nothing seems to work.

And it seems like this is the online tutorial i can find with this specific subject :)

Thanks in advance! hj

Here you can find my file, almost completed...

Did you succeed step 2?

In that case, please challenge step 3 again.

I rewrote the description in detail.

I am sorry, it is not possible to check it by downloading an individual file.

hey, thanks for the tutorials...

i got following problem: how can i evaluate the right angle to rotate the rod when i key it so the piston moves only in Z coordinates. (is there a way to snap to a vertex for exaample when i rotate something)


Are you specifying Constraint axes:
All (default) for
the option of Point Constraint?
It moves only in the direction of Z
when you are specifying Z.

Thank you for your visiting my site.

Good one.... gr8.

Very Interesting post! Thank you for such interesting resource!
PS: Sorry for my bad english, I'v just started to learn this language ;)
See you!
Your, Raiul Baztepo

Thank you very much for your comment.

Hey there. Great tutorial, I got it to work. But I have 1 question:

Is there a way to duplicate the piston and move it, and still have all the connections work? Like for instance, if I want to make a v6 engine, and have 6 of these pistons, when I duplicate the 1st piston group, the duplicate piston does not work. If I duplicate it as an instance it WILL work, but unfortunately in a real engine you need each piston to fire off at a different time, and these would all move together. Any help would be appreciated, thanks!
- Mike

Thank you for your comment.

Please try this.
1. Make a group with cam rod and piston.
2. Copy (Ctrl + c) and paste(Ctrl + v) the group.
3. Slide the key frames of cam with time slider.

Hi. I like the way you write. Will you post some more articles?

Yes,I will.
Thank you for your comment.


[privacy policy]
We use third-party advertising companies to serve ads when you visit our Web site. These companies may use information (not including your name, address email address or telephone number) about your visits to this and other Web sites in order to provide advertisements about goods and services of interest to you. If you would like more information about this practice and to know your choices about not having this information used by these companies, click here.
search this site