About External References in Solaris

   651   4   0
User Avatar
Member
19 posts
Joined: July 2020
Online
Hello,

I have recently started using Karma and Solaris

I've been studying various aspects, but I'm finding file referencing to be more challenging and confusing compared to the Mantra workflow.

While I'm aware of the existence of Karma ROP, I'm using Solaris for its ability to edit details since rendering needs to be done on Deadline. Currently, I'm using the Geometry Clip Sequence LOP to load animation bgeo, but it generates topology and manifest files. Are these necessary? Is it possible to consolidate them into a single USD file?

Also, I'm puzzled by the requirement to use the USD Configure SOP only for bgeo.sc. Forgetting to use USD Configure or when dealing with previously created data, I need to render the cache again.

When loading VDB via Volume LOP or Alembic via Reference LOP, no extra files are outputted, and I believe there's no need for the USD Configure SOP beforehand. So, I'm questioning the difference there.


Sorry for my poor English as I am using a translation tool.
Edited by Suu-jp - Feb. 16, 2024 03:38:44
User Avatar
Member
274 posts
Joined: Nov. 2013
Offline
Suu-jp
Currently, I'm using the Geometry Clip Sequence LOP to load animation bgeo, but it generates topology and manifest files. Are these necessary? Is it possible to consolidate them into a single USD file?

Short answer is yes they're necessary, and no the two files perform different functions and can't currently be consolidated. Long answer is that unlike per-frame bgeo files, usd doesn't allow scenegraph topology to change from frame to frame. This is primarily for efficiency reasons, so that renderers can get fine-grained updates about what is and isn't changing over time, rather than be presented with a completely new scene every frame. The extra files are there to describe exactly which prims and attributes in the scene are changing.

Suu-jp
When loading VDB via Volume LOP or Alembic via Reference LOP, no extra files are outputted, and I believe there's no need for the USD Configure SOP beforehand. So, I'm questioning the difference there.
VDB is a little different in that volume files are basically treated like a texture file - renderers typically consume them but usd itself does not (more details here [openusd.org]). The rules around alembics are similar to bgeos, in that per-frame abc files would need to be managed by a clip setup. Multiple frames encoded in a single alembic file on the other hand don't need to utilize clips and can simply be referenced (using the reference lop).
User Avatar
Staff
4444 posts
Joined: July 2005
Offline
There is a workaround to avoid re-publishing your .bgeo files with the USD Configure SOP. You can force a .bgeo file to be loaded as if it was published with a "time" value from a USD Configure SOP by appending a suffix like ":SDF_FORMAT_ARGS:t=$T". So the file path you put in the geo clip sequence LOP would look something like "/path/to/file.$F4.bgeo.sc:SDF_FORMAT_ARGS:t=$T".
User Avatar
Member
19 posts
Joined: July 2020
Online
アンチ
Suu-jp
Currently, I'm using the Geometry Clip Sequence LOP to load animation bgeo, but it generates topology and manifest files. Are these necessary? Is it possible to consolidate them into a single USD file?

Short answer is yes they're necessary, and no the two files perform different functions and can't currently be consolidated. Long answer is that unlike per-frame bgeo files, usd doesn't allow scenegraph topology to change from frame to frame. This is primarily for efficiency reasons, so that renderers can get fine-grained updates about what is and isn't changing over time, rather than be presented with a completely new scene every frame. The extra files are there to describe exactly which prims and attributes in the scene are changing.

Suu-jp
When loading VDB via Volume LOP or Alembic via Reference LOP, no extra files are outputted, and I believe there's no need for the USD Configure SOP beforehand. So, I'm questioning the difference there.
VDB is a little different in that volume files are basically treated like a texture file - renderers typically consume them but usd itself does not (more details here [openusd.org]). The rules around alembics are similar to bgeos, in that per-frame abc files would need to be managed by a clip setup. Multiple frames encoded in a single alembic file on the other hand don't need to utilize clips and can simply be referenced (using the reference lop).

I see, I understand now.
Currently, it is not possible to merge those two files.

I'm hoping for an update because I'm having trouble managing the two more files per Geometry Clip Sequence LOP.

I also understand the difference between VDB, Alembic and bgeo.
Thanks, very informative.
User Avatar
Member
19 posts
Joined: July 2020
Online
mtucker
There is a workaround to avoid re-publishing your .bgeo files with the USD Configure SOP. You can force a .bgeo file to be loaded as if it was published with a "time" value from a USD Configure SOP by appending a suffix like ":SDF_FORMAT_ARGS:t=$T". So the file path you put in the geo clip sequence LOP would look something like "/path/to/file.$F4.bgeo.sc:SDF_FORMAT_ARGS:t=$T".
Thank you. I was looking for this!
I will try it right away.
  • Quick Links