I have animated a spring contracting and expanding by creating a set of expressions/controllers. The pictures show my current progress. What I need to do now is set the spring up so that the first two coils and the last two coils stay together, while the remaining coils stretch appropriately.
If I remember correctly, I believe there is a Loft parameter that can control the ends in the manner I need, but after digging through so many windows I'm a bit lost.
I'll try to explain how the rig is set up, so bear with me.
1. Spring pivot point is aligned to Dummy01 pivot.
2. Spring has a LookAt Constraint with Dummy 02 as the target.
3. Helix (spring) height is controlled by a 'Float Expression Controller' in the Height parameter, located in the Curve Editor.
4. A Vector Variable is assigned as a Dummy02 controller
5. Expression function (how the height is determined) is a 'length() Expression function, where the height is the distance between Dummy 01 and Dummy 02.
...
After reading that, not even I would know what it is I'm looking at :poly116: Basically the height/stretch amount is equal to the distance between Dummy01 and Dummy02. I only need to pull Dummy02 to get the spring to react, but its a math function and not simply a Parent/Child link.
Maybe there's an option to set up the controller similar to a soft-selection or vertex weights?
Replies
I would go the easy route and just attach endcap geometry that are just bound to the dummies. Just nudge them so they lineup with the springs.