Concrete technical questions regarding USD

Hello,

I am trying to fight my way through understanding how USD works, but my brain is struggling.
So I thought this forum would be a great place to open a thread as a central place for asking concrete questions regarding the technicalities of USD.

I’ll start with a problem I am currently facing:
some quotes from the USD Glossary:

  1. “We refer to these operators as arcs because each one targets either a layer, a prim, or a combination of layer and prim”

  2. “Except for subLayers, all composition arcs target a specific prim in a LayerStack”

  3. “Importantly, composition arcs can only be applied on PrimSpecs, and those arcs that specify targets are targeting other PrimSpecs.”

  4. “Composition Arcs target LayerStacks, not Layers. When a layer references (or payloads or sub-layers) another layer, it is targeting (and therefore composing) not just the data in the single layer, but all the data (in strength-order) in the LayerStack rooted at the targeted layer.”

I am trying to understand composition arcs and these statements regarding their targets are scattered throughout the entire glossary. I cannot assemble those pieces of information into a coherent picture. Currently, I am so confused, that I am unable to formulate specific questions, even after trying to do so for over an half an hour.
If you are already willing to shed some light / knowledge on the matter of the topic feel free to do so, but if my issues are not apparent, let me know and I’ll try to follow up with something more concrete in the next couple of hours!

Thank you for your help!

Hi,
I would recommend skipping the glossary to start with. It’s meant for clarifying terms for people already familiar with USD to make sure we’re all saying the same things.

Instead, I’d point you to a few other resources to understand composition arcs.

The tutorial examples on the USD website are very good at giving you a hands on explanation of how composition works

Additionally the Houdini docs for USD are a lot easier to read than the Pixar docs https://www.sidefx.com/docs/houdini/solaris/usd.html

Finally, Pixar do describe composition arcs in more easy to understand terms here https://renderman.pixar.com/stories/pixars-usd-pipeline

Finally, to break down what is being said in the bits you quoted

Composition arcs describe how an object in the hierarchy , also called a Prim , is created by doing things like references, overrides and layering. An object may be the result of many of these and together that’s called a composition arc.

The rest of the statements are saying that with the exception of layers, all the other composition methods are specifying exactly one prim to act upon.

Layers instead act upon many prims because they’re applied on top of the whole scene.

Layers when put together are called a layer stack. The last quote then says that all the composition methods can only act upon the result of a prim at the point they are applied at. So if you have five layers, the third layer can’t specify that it wants to apply things like overrides on the first layer, it can only apply it to the result of all the layers before it.

Hopefully that clears things up, but let me know if not.

3 Likes

Hello Dhruv,
once again thank your for your answer and the link to the sidefx doc.
It definitely helped. You seem super knowledgeable regarding USD, probably through your work at SPI. Would you mind if I hit you with more question regarding USD that will come up as I try to fight my way through it?
Thank you!

Some great info in the USD Cookbook.