Jump to content

Recommended Posts

Posted (edited)

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×