How to unwrap (linearize) render depenedancy tree?

   1584   3   0
User Avatar
Member
55 posts
Joined: Jan. 2006
Offline
(See attached image for demo render tree)

Given just the final ROP how do I, in python, get the list of all the ROPs direct dependencies?

I'm working on a custom render submitter.

I know I can run
 hou.node("out/r").inputDependencies()
to get the full list, but that doesn't give me the dependencies of each node in turn.

I figure I'll probably need to write a recursive function to spit these out. Something that runs over each subsequent list of dependencies until there are none then return the list. Somehow.

But maybe not? I imagine there might be an internal to Houdini way to do this, no?
Edited by kleer001 - May 8, 2019 19:51:15

Attachments:
ROPnetwork.png (20.1 KB)

“If you can eat it raw you can't under cook it”
User Avatar
Member
178 posts
Joined: Jan. 2013
Offline
Do you mean the nodes directly connected to your Rop node of interest? If you want the first-level dependencies, couldn't you just also run RopNode.inputs() and check that each node in inputDependencies() is also in that list?
User Avatar
Staff
5156 posts
Joined: July 2005
Offline
The ‘render -p’ hscript commamd prints dependencies out with a lot more control over the format. It gives each job an ID and a list of IDs that job depends on.
User Avatar
Member
380 posts
Joined: July 2005
Offline
ill +1 this RFE (still not in 19.5)

Might be nice to have multiple dependency lists returned from `inputDependencies()` akin to `render -pF` ids rather than a singular flat list of all `render -pF` line items. For example, the last node in each sublist represents a line item from `render -pF` and the line item id order resolves to the dependent rop object order in that list.
  • Quick Links