SOP_Create - Layer save path not outputting usd

   1491   2   0
User Avatar
Member
41 posts
Joined: Dec. 2017
Offline
Hey,

I may be missing something but… in this scene I have the SOP_Create node and that contains a ‘file’ node which references some bgeo.

I was expecting that if I set the ‘layer save path’ that a usd file would be saved to disk for use downstream but this isnt happening. I've also tried placing a configlayer beneath the SOP_Create but that also doesnt work.

I feel I'm missing something as in a fresh scene this works fine. Maybe something I'm doing downstream in other nodes?

Cheers for any help, as always !
Edited by danwnewlands - Nov. 13, 2020 05:34:57

Attachments:
image_2020-11-13_103023.png (348.0 KB)

User Avatar
Staff
4438 posts
Joined: July 2005
Offline
danwnewlands
I was expecting that if I set the ‘layer save path’ that a usd file would be saved to disk for use downstream but this isnt happening. I've also tried placing a configlayer beneath the SOP_Create but that also doesnt work.

Layer Save Path just sets some data on the layer indicating where the file _will_ be saved when you use a USD ROP to write out the data. But I suspect your real complaint in this setup comes from the use of the Add Variant node. When you author a variant, you are re-homing all the primitives from layers created on the multi-inputs (the prims defining the variant must exist as children of the prim with the variant set). So we flatten the layer stack of each input, and copy the low level (Sdf) primitives from the input stage roots as children of the primitive getting the variant. So all your sublayers get squished together and incorporated into the one active layer where the variant is defined.

If you want the SOP data to live in a separate file on disk, you have to set it up as a _reference_ rather than a sublayer (turn on “Load as Reference” on the SOP Import LOP). Then when you flatten the layer stack to copy the prims into the variant definition, the reference will continue to be a reference, and when the USD ROPs writes everything to disk, that referenced data will be written to the separate file specified in the Save Layer Path parameter.
User Avatar
Member
41 posts
Joined: Dec. 2017
Offline
That makes total sense, thanks for the great explanation. I wasnt complaining in any way, just a lack of understanding is all.

Good to know, tested and all working so thanks again
  • Quick Links