I’ve created a script that will create chains of stretchy bones in Max. It’s free!
Here is link to v2.1 - updated on 11/17/10
old script below:
Here is link to v1.3 - updated on 10/01/10
[b]Why I created this script:[/b]
I've been rigging a few faces lately, and I found it was tedious to create the same stretchy bone constrained to point helpers over and over again. Then I got tired of merging in a file with a stretchy bone already setup. In addition to that I wanted a way to quickly create an arbitrary number of bones already linked together in a chain. My introduction to stretchy bones came from Louis Marcoux ([http://www.louismarcoux.com/Videos/MuscleObjects.wmv](http://www.louismarcoux.com/Videos/MuscleObjects.wmv)), so these bones are based on his method of creation, however, I've removed the point helpers and instead used spheres. I see tons of people using stretchy bones for all kinds of different things in Max, so I hope this takes the tedium out of them a little bit.
[b]How this script works:[/b]
You have 1 input and 2 buttons, for now. The input determines how many bones are created, and the first button creates X number of bones in a line at the origin. The second button removes all the created spheres and bones from the scene (using a naming convention). It's simple and to the point.
[img]http://www.garrickcampsey.com/media/stretchyBonesCreatorV03.jpg[/img]
[b]
What this script does:[/b]
For an input value of 1: creates a bone object between two spheres, unfreezes the length, color-codes the bone and spheres, renames the bone to stretchy bone, renames and hides the nub bone, locks all the transforms/flags on the bone and nubBone (you shouldn't be moving them anyway), sets up position constraints, and sets up lookAt constraints (turns off the viewline) from the bone to the spheres. And it does that for any number of bones you want (I limited the spinner to a maximum of 100 bones in a single chain, for now).
[b]Upcoming features:[/b]
Coming up soon, I hope to add in the ability to create the bone chain in a ring, for mouths.
I also want to create a ring with stretchy bones branching off each animation control, just like the one pictured below and on the right (image © [tysonibele.com](http://www.tysonibele.com)):
[img]http://tysonibele.com/Main/Tutorials/Face/face7.jpg[/img]
I may also add a button for creating stretchy bones in grids, for rigging a deforming wall or other type of object.
[b]Support:[/b]
I started learning maxscript a few days ago, so I don't know if I can support this across all versions. I can test on Max9, and will try to fix the script so it works for your version of Max, if you run into problems. I hope there aren't any compatibility issues, as I didn't use any ActiveX or DotNET components/objects.
[b]Feedback:[/b]
Please feel free to tell me where my code sucks, as the code is not encrypted. I want to make it better/faster and version independent, but I'm not sure how to go about doing that - so give me feedback and criticism and I will do the dirty work. Happy Maxing! :)
[img]http://www.garrickcampsey.com/media/stretchyBonesCreatorV03b.jpg[/img]