Jump to content


Bones from Curve Functionality


  • Please log in to reply
7 replies to this topic

#1 WingsofAsgard

WingsofAsgard

    Peon

  • Members
  • Pip
  • 3 posts
  • Joined: 21-July 11
  • Location:Savannah, GA
  • Name:Ian Brown

Posted 21 July 2011 - 03:30 AM

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.

#2 old school

old school

    Houdini Master

  • Members
  • PipPipPipPip
  • 914 posts
  • Joined: 21-March 03
  • Location:The Great White North

Posted 21 July 2011 - 04:28 AM

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:
[code]
arclen (string surface_node, float prim_num, float ustart, float ustop)
There's at least one school like the old school!

#3 WingsofAsgard

WingsofAsgard

    Peon

  • Members
  • Pip
  • 3 posts
  • Joined: 21-July 11
  • Location:Savannah, GA
  • Name:Ian Brown

Posted 22 July 2011 - 08:23 AM

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.

#4 thekenny

thekenny

    Illusionist

  • Members
  • PipPipPip
  • 367 posts
  • Joined: 16-August 02
  • Name:the kenny

Posted 22 July 2011 - 08:37 AM

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

#5 michael

michael

    The Deaf Stamp!

  • Administrators
  • 3,769 posts
  • Joined: 25-June 02
  • Location:Toronto, Canada
  • Name:Michael Goldfarb

Posted 22 July 2011 - 05:18 PM

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...
Michael Goldfarb | CG Supervisor | Mr. X

#6 anim

anim

    Houdini Master

  • Members
  • PipPipPipPip
  • 983 posts
  • Joined: 23-August 07
  • Location:Slovakia, Bratislava
  • Name:Tomas Slancik

Posted 23 July 2011 - 01:33 AM

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
Tomas Slancik
Generalist
Slovakia

#7 WingsofAsgard

WingsofAsgard

    Peon

  • Members
  • Pip
  • 3 posts
  • Joined: 21-July 11
  • Location:Savannah, GA
  • Name:Ian Brown

Posted 23 July 2011 - 06:35 PM

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.

#8 edward

edward

    Grand Master

  • Members
  • PipPipPipPipPip
  • 3,339 posts
  • Joined: 10-September 02
  • Name:e.d.w.a.r.d. .

Posted 23 July 2011 - 08:24 PM

View PostWingsofAsgard, on 22 July 2011 - 08:23 AM, said:

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.

Quote

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.

Attached Files


don't panic!




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users