WingsofAsgard Posted July 21, 2011 Share Posted July 21, 2011 Does anyone know where I might find the code for the Bones from Curve Operations Toolbar? I am currently working on a rig for an arthropod with the goal of creating it in such a way that it is adjustable on the fly, similar to how you can change the number of bones created on a curve using the operations toolbar for Bones from Curve. The functionality from what I can tell currently only works at the time of creation of a chain of bones, once you have created another chain of bones the only way to add or subtract links and auto re-adjust is through the use of a script as far as I'm aware. Any help would be greatly appreciated, thanks. Quote Link to comment Share on other sites More sharing options...
old school Posted July 21, 2011 Share Posted July 21, 2011 I don't know if this function is available as a script... You can roll your own though. 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) Quote Link to comment Share on other sites More sharing options...
WingsofAsgard Posted July 22, 2011 Author Share Posted July 22, 2011 I intended on doing just that. I should elaborate on what it is exactly that I'm trying to accomplish. 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. Quote Link to comment Share on other sites More sharing options...
thekenny Posted July 22, 2011 Share Posted July 22, 2011 if that is so, you may want to consider that your weighting will either have to be dynamic as well, adding a new bone, add it to the capture as it exists and moving forward. 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. -k Quote Link to comment Share on other sites More sharing options...
michael Posted July 23, 2011 Share Posted July 23, 2011 I'm with thekenny... the advantages of having a dynamic system like this will, IMO, be outweighed(no pun intended) by the disadvantages down the line... Quote Link to comment Share on other sites More sharing options...
anim Posted July 23, 2011 Share Posted July 23, 2011 I'm with WingsofAsgard... 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 1 Quote Link to comment Share on other sites More sharing options...
WingsofAsgard Posted July 24, 2011 Author Share Posted July 24, 2011 Exactly my thinking anim...very, very fast workflow. I'm also in agreement with anim on the whole weighting matter. 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. Quote Link to comment Share on other sites More sharing options...
edward Posted July 24, 2011 Share Posted July 24, 2011 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. Probably by adding/removing bones to match and then recomputing bone lengths and transforms. 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. 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. dynamicCapture.hipnc Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.