Trying to understand more about this feature of Node Delay Sync and why since Houdini 19.5 some of my assets just don't cook correctly, where I end up with things like a Switch SOP display "2" on the parameter, but using input 0.
This has already been RFE'd, but if anyone has insights to share I appreciate it given the little info I found on it.
That's definitely a weird bug. Forcing Node Sync on load for that node type works around the bug. Delayed node sync is not intended to change dirtying behavior for indirect dependencies. There's another workaround for the bug you can use if you want to keep delayed node sync enabled for that node. Use a cacheif on the switch's output with the secondary input connected to the assess and enable detect upstream network changes and a test input for the detail attribute named 'type'.
Well to start of I don't even know much about this feature. I looked into asset manager to see if there is a global option, but didn't spot it. You mentioned "dirtying" so one immediately thinks of TOPs. Is there some presentation or documentation about this SOP behavior, the core concepts and how to manage it?
Indeed using this option will avoid the issue completely. You mention the cache-if (I tried it and it works, thanks) in case I "want to keep delayed node sync enabled for that node" but part of the reason for this post is once trying to understand the delay sync feature and why should I want it or should I manage it. I don't see documentation about it. More over as seen in the video the interaction changes according to desktop used. So it seems like some "heads-up" could be given as one is not usually redoing this desktops from version to version.
The delayed node sync feature was introduced to speed up loading houdini scenes that have a large number of nodes that aren't required immediately to cook. Delayed node syncing will only load node contents just prior to first cook. I'm not sure if theres a global option to disable it, perhaps an env var exists?
jsmack I'm not sure if theres a global option to disable it, perhaps an env var exists?
It does exist:
$ hconfig -h HOUDINI_DELAYSYNC_HDA HOUDINI_DELAYSYNC_HDA When a node is created that is a digital asset, delay syncing will not immediately create all the child nodes. This will be delayed until the contents are required by a cook. The intention is that this is always a safe operation.
Setting this variable to 0 will prevent the delay-syncing of HDAs, helping debug or workaround issues that may arise from this.
Thank you @jsmack and @edward for the added insight. This has been taken in as a bug and hopefully fixed. I'm still puzzled about the desktop dependent behavior.
probiner I'm still puzzled about the desktop dependent behavior.
Your desktop had a geometry spreadsheet open, which will cook anything immediately without displaying--which was the cause of the bug. The default desktop doesn't have the spreadsheet open.
probiner I'm still puzzled about the desktop dependent behavior.
Your desktop had a geometry spreadsheet open, which will cook anything immediately without displaying--which was the cause of the bug. The default desktop doesn't have the spreadsheet open.
Ah! Makes sense, didn't take that into account. Thanks for clearing that one up!