I'm playing around with output_processors and just printed "asset_path" to find out what this variable returns. I realized it only returns the connected Nodes asset_path/references. Not all the nested paths within does references.
Is there a way to get all the nested paths?
In the "_box" Sublayer Node I'm loading a USD referencing two usd's (box.usd/mat_rot.usd ) . I would like the outputprocessor to not only output the sublayer nodes usd but also the nested( marked blue ) box.usd and mat_rot.usd. Is there a way to achieve this?
Output processors are only passed assets whose paths we can affect. This means only assets referenced by USD files that the USD ROP is writing to disk. In your example, the USD ROP is not writing to super_box.usd, so there is no point in passing the mat_rot.usd asset path to the output processor. We can't affect the mat_rot.usd path within super_box.usd.
If you really want to do some kind of recursive processing (for validation or dependency tracking purposes) you can take any USD files passed to the output processor and inspect them yourself within the output processor to (recursively) find all referenced assets.
mtucker Output processors are only passed assets whose paths we can affect. This means only assets referenced by USD files that the USD ROP is writing to disk. In your example, the USD ROP is not writing to super_box.usd, so there is no point in passing the mat_rot.usd asset path to the output processor. We can't affect the mat_rot.usd path within super_box.usd.
If you really want to do some kind of recursive processing (for validation or dependency tracking purposes) you can take any USD files passed to the output processor and inspect them yourself within the output processor to (recursively) find all referenced assets.