Bones from Curve Functionality
Posted 21 July 2011 - 03:30 AM
Any help would be greatly appreciated, thanks.
Posted 21 July 2011 - 04:28 AM
The Bones from Curve tool does the following steps which you can do yourself in your tool and more:
- Measures length of backbone curve
- Creates the number of bones requested by the user
- Changes the length of the bones based on the backbone curve length divided by the number of bones
- Places an Inverse Kin CHOP setting the first and last bones in the chain along with the curve geometry.
Now to roll your own. You don't have to place a new Inverse Kin CHOP but everything else you have to manage.
To measure the length of a curve, use the hscript command:
arclen (string surface_node, float prim_num, float ustart, float ustop)
Posted 22 July 2011 - 08:23 AM
The reason I asked about the Bones from Curve Operations Toolbar code was not to understand how it's creating the bones along the curve but rather how it is creating a chain of bone and how it is updating the number of bones dynamically until another chain of bones is created. The intended purpose is to create a new bone SOP that will manage a chain of bones that can be updated dynamically at any time during production. An example: being able to change the rig from that of an ant to that of a butterfly which minor adjustments and toggle switches. Part of this would include the ability to change the length of each individual bone and adjust the bones down stream to the new length of the previous bone.
The hscript code you provided might be of some use though.
Posted 22 July 2011 - 08:37 AM
typically leaving the capture open ( not locked down ) will result in a speed hit to the rig. the capture pose may change that somewhat but still something to consider.
Posted 22 July 2011 - 05:18 PM
the advantages of having a dynamic system like this will, IMO, be outweighed(no pun intended) by the disadvantages down the line...
Posted 23 July 2011 - 01:33 AM
as I was working with CAT in 3dsmax, it's very user friendly and useful to be able to customize your rig with such ease as changing the bone twisting segments, finger count, limb count and everything on the fly
It's very, very fast workflow
There is no need to for automatic reweighting the character after the changes, since that changes are part of rig customization process and if you are happy then you weight. Then you can copy that rig skeleton, alter a few such parameters and weight second character to it. And you have rigged whole set of characters in no time
I think It can be managed with Python callbacks, but as thekenny and michael have indicated, be very careful of your whole setup and not overcomplicate things to avoid later problems
Posted 23 July 2011 - 06:35 PM
I'll look into management with Python callbacks.
Thanks for the feedback. Any further thoughts feel free to post them, I'll be monitoring this topic.
Posted 23 July 2011 - 08:24 PM
Probably by adding/removing bones to match and then recomputing bone lengths and transforms.
If you want to do something like that, then I think you will have to give up on using bone objects, and then need to figure out some way (read: script) which will create the necessary HDA parameters and link them with your SOP. I've attached a file that shows the concept. There's many problems with it still but it gives you the idea.
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users