jim c Posted April 20, 2013 Share Posted April 20, 2013 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. Quote Link to comment Share on other sites More sharing options...
Guest mantragora Posted April 20, 2013 Share Posted April 20, 2013 RMB on the handle and select "Export handle to Digital Asset". Quote Link to comment Share on other sites More sharing options...
jim c Posted April 20, 2013 Author Share Posted April 20, 2013 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... Quote Link to comment Share on other sites More sharing options...
Guest mantragora Posted April 20, 2013 Share Posted April 20, 2013 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) ? Quote Link to comment Share on other sites More sharing options...
jim c Posted April 20, 2013 Author Share Posted April 20, 2013 Yeah, Here's the hip and otl t3.hipnc t2.otl Quote Link to comment Share on other sites More sharing options...
jim c Posted April 20, 2013 Author Share Posted April 20, 2013 (edited) 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 April 20, 2013 by jim c Quote Link to comment Share on other sites More sharing options...
jim c Posted April 20, 2013 Author Share Posted April 20, 2013 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 Quote Link to comment Share on other sites More sharing options...
jim c Posted April 20, 2013 Author Share Posted April 20, 2013 (edited) 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 April 20, 2013 by jim c Quote Link to comment Share on other sites More sharing options...
Guest mantragora Posted April 20, 2013 Share Posted April 20, 2013 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. Quote Link to comment Share on other sites More sharing options...
anim Posted April 20, 2013 Share Posted April 20, 2013 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) Quote Link to comment Share on other sites More sharing options...
jim c Posted April 29, 2013 Author Share Posted April 29, 2013 @anim, yep that's what I ended up doing. I didn't realize it was going to be that easy 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.