Jump to content

Recommended Posts

I have several otl versions of some assets and probably I will get more during the production and I'm looking for a way to manage them. The behavior I would prefere is that I start with a new houdini and with the otl scan path set to my otl directory where all version are saved. when I drop in a node of that definition it uses the latest one. when i open the scene it uses the one that was originally active when it was saved.

The workflow is not that clear right now, cause there is the possibility to do it by several otl files on disc,all with same operator name. houdini scans in the otls and uses one. now the user can select the a older definition if he wants

another way is with namespaces and versions.

not to forget the version parameter in the operator type property window, it seems not to have a real effect

what is the way to go for this?

MartinPS: and how can I force a definition when several otls are visible in the operator type manager with python, I could not find a hou method for getting a list of installs of a operator that is not used in the scene, yet and how to set one as active

Edited by sanostol
Link to comment
Share on other sites

I think operator versions already do this. Pretty sure they work correctly because even built-in SOPs like attribcreate does this, as the latest version is 2.0, and this is the version that's used for new instances, but anything that uses the old version still uses the old version.

You can tell the difference between them easily as the parameter layout is different.

Link to comment
Share on other sites

what about the version parameter in the operator type property window, is it used?

one downside when I do the namespace version way i get different names back when asking for node().type().name()

btw. thanks

Edited by sanostol
Link to comment
Share on other sites

I think the string version parameter doesn't do anything by itself. It is to do your own upgrading via event handlers. I personally don't see a reason to use it.

node().type().name() would return the proper type name of the "node" instance. If you are trying to create new nodes, the createNode function has exact_type_name that allows you to use the latest version or a specific version.

Also check out the node().type().namespaceOrder function, that returns a list of type names where Houdini uses the first one in createNode by default.

Link to comment
Share on other sites

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...