Jump to content

Updating nested HDAs


Recommended Posts

I updated to h17.5 and all my custom HDAs broke, sidefx updated the bound sop and now im getting this error message on all my HDAs -

/obj/path/to/my/HDA/bound1:

"Too many elements found for parameter "blahblah/bound1 Bounding Type" 

This is across about 20 different HDAs in this scene, with probably 100 total instances throughout the scene.  Is there any way to go about fixing this sort of issue without manually updating every single HDA by hand?

 

However this is just one case, looking for general solutions and good practices for handling & updating nested HDAs so things dont break like this

Example case- you have a tree HDA, inside that you have various leaf modules that are each their own HDA.  Each leaf's parameters are relative reference linked to the top level tree HDA.  Each leaf is a different HDA (leaf_A, leaf_B etc) however they all share a common HDA that controls the leaf shader, for instance. 

Now the problem comes when you try and update that leaf shader HDA, if you version up your asset & make changes, the other leaf assets will not update to the latest version so you have to go and update them all by hand. 

But the bigger problem is if you do something like change the name of a parameter (that is expression linked to the top level HDA) e.g. from leafcolor to leafColor, everything will break and you will get this error message:

some_instances_of.thumb.JPG.94710265d2a3c9211accc34a4b516858.JPG

 

I'm not 100% sure what these options really mean, but from what I can tell the old leafcolor parameter will be a spare parameter now, unique to that HDA instance, and you can go and delete all spare parameters and that will get rid of them, and I think thats what "destroy all spare parameters" is suppose to do for each instance, HOWEVER since all the other instances of this HDA are nested inside LOCKED HDAs, that button will have no effect and everything will remain broken. Other than undoing these changes, the only way ive been able to fix this is to go and manually delete all the spare parameters in EACH HDA INSTANCE, not just the master HDA. sigh.

That is just one example of a parameter change but it can happen in a million different ways.

 

Anyone have any insight on how to handle/avoid situations like this, best practices etc?  Any help is much appreciated

 

 

Edited by Neon Junkyard
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...