Jump to content

Rig and digital asset


jim c

Recommended Posts

If I have a character that I've rigged, it seems natural to want to wrap it up in a digital asset. However to make it possible to manipulate, it seems that you need to create translate and/or rotate handles in the DA for each controller for bones, IK, etc. This gets *really* tedious when you have 40- 50 controllers to do. So is there a way to write a script in python to create these handles (i.e. the handles in the Type Properties "Handles" tab) programmatically? Or is there some other way to accomplish what I want: to be able to click on a controller object in the rig and manipulate it without having to unlock the DA.

Link to comment
Share on other sites

Hmmm. I've found some docs on this, and no matter what I do, I keep getting this error dialog :

"There was a problem creating the handle "Transformer:/obj/subnet/ptr" of type multixform."

And then an explanation suggesting that it needs to be persistent or it's the wrong type or something like that. I do have the type properties window for the DA open. Something I'm missing here...

Link to comment
Share on other sites

Guest mantragora

Can you recreate problem on some simple scene or share the one you have problem with (just rip unnecessary parts if you can't show them) ?

Link to comment
Share on other sites

I'd like to setup handles for the Nulls called "main" and "ptr". I realize that I could do this item by item, but I'm trying to figure out how to handle lots of nulls.

Houdini version 12.1.230

No matter what I do I can't get "Export handle to Digital Asset" to work. I can get it to export multiple parameters, but it seems to export more than I would like, for example, it seems to export translate, rotation, and scale, when in reality what I'd prefer is just translate or rotate, or even better to recognize that I've got a parameter locked and not export it (this doesn't seem to work).

If it turns out that this is not possible, and is simply a tedious job that needs to be cleaned up by hand, that's OK (it sucks, but I can live with it), but I'd like to find out if I'm doing this the hard way or not.

Edited by jim c
Link to comment
Share on other sites

preferably the ptrs and main transform. What I'm hoping to hear is that I can select a bunch of handles at once and then export them in one step. Or, that there's a way to programmatically do this through python. I've looked through the HOM and from what I can tell the parts that I might need to call are labeled as not implemented :(

Link to comment
Share on other sites

So this is just weird. According to

http://www.sidefx.co...assets/asset_ui

You need to use the Pose tool. And it doesn't work if you have the Translate tool selected previously. However if you have "Show Handle" tool selected, then click on Pose (with your items selected) and then RMB and click on "Export handle to Digital Asset" it works. Sort of. What seems to happen is that exports 1 of the selected items and it exports ALL the transforms parameters, translate, rot, scale, uni scale, etc. Which is COMPLETE overkill, and it doesn't seem to pick up the other selected items any how. So all in all, not very useful, at least for my specific case (I'm sure it IS useful, but I'm probably missing the larger picture).

If you select the Rotate tool, select the items you want to deal with, and then RMB and click on "Export Parameters to DA", then it exports the transl, rot, and scale parameters of ALL the selected items. Closer but still not what I want.

If you select your items, and then ALT + MMB on the rotate parameter label, then ALL the rotate params get exported from all the items you have selected. This seems to be sort of reasonable, at least it works on a collection of items and is controllable. You can then save the DA, lock it, and then click on the relevant nulls and it seems to work OK.

Edited by jim c
Link to comment
Share on other sites

Guest mantragora

If you really want :), you can go mixed hscript/python way. List all handles that are available for null node with hscript:

/ -> ombindinfo -t obj null
null bindings:
"Null Transformer" xform { trs_order->xOrd xyz_order->rOrd tx->tx ty->ty tz->tz rx->rx ry->ry rz->rz sx->sx sy->sy sz->sz px->px py->py pz->pz uniform_scale->scale }
"Follow Path" followpath { path->pathobjpath position->pos roll->roll parm_type->uparmtype }

Then check with python which parameters are locked and bind just the ones you need. But I don't see a way to specify which ones you want to bind. It looks that when you create handle it comes always with all parameters.

Link to comment
Share on other sites

in my experience it's not a good idea to export handles to asset

just promote transform parameters you need to asset and when you select an object which is part of the asset you will see the handle for promoted transforms automatically (and only the promoted channels, so if you promote just rx you will see only handle for rx, very convenient, no mess with exporting handles)

Link to comment
Share on other sites

  • 2 weeks later...

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...