Free NVIDIA-Certified Professional: OpenUSD Development practice — 6 questions on Composition and Composition Arcs, with explanations. No sign-up.
Full 12-question mixed test →
Question 1 of 6 · Composition and Composition Arcs
On the stage, /World/Props/Chair inherits from /World/_class_/BaseChair, which authors radius = 5.0 on a Sphere child. Chair also has a reference arc to an external layer Sphere_ext.usd that authors radius = 2.0 on the same child prim, and neither layer authors radius directly on Chair itself. What is the composed value of radius?
LIVRPS orders arcs strongest-to-weakest as Local, Inherits, Variants, References, Payloads, Specializes. Since neither layer authors a direct local opinion on Chair, the inherited opinion (5.0) beats the referenced opinion (2.0) purely because Inherits outranks References.
Question 2 of 6 · Composition and Composition Arcs
The strongest layer in a layer stack authors: references.prepend = ["C.usd"]. A weaker sublayer authors: references = ["A.usd", "B.usd"] (a plain, op-less assignment). What is the final composed reference list, ordered strongest to weakest?
A plain (op-less) list assignment is treated as an explicit list at that point in the layer stack; stronger layers can still prepend or append relative to it. The prepend item is inserted before the explicit base list in strength order, giving [C.usd, A.usd, B.usd], preserving the weak layer's own internal ordering.
Question 3 of 6 · Composition and Composition Arcs
/World/Robot carries both a payload (robot_payload.usd, which sets jointCount = 6) and a reference (robot_ref.usd, which sets jointCount = 8) on the same prim, with no local opinion authored directly on Robot. Both arcs are currently loaded. What is the resolved value of jointCount?
LIVRPS places References ahead of Payloads in strength (Local, Inherits, Variants, References, Payloads, Specializes). Regardless of load timing, once both are loaded the reference's opinion (8) wins over the payload's opinion (6) purely by arc-type strength.
Question 4 of 6 · Composition and Composition Arcs
You are designing a shading library where downstream prims should be able to pick up common default shader parameters from a shared base prim, but ANY opinion introduced later via a reference or payload on those downstream prims must always win over the base defaults — while the base prim should still propagate live edits if it is later modified. Which composition arc should link the downstream prims to the shared base?
Specializes is the weakest arc in LIVRPS — weaker than References and Payloads — so any opinion from those arcs will always override it, exactly as required. Like inherits, it still composes live opinions from the target (not a static copy), making it the correct choice for fallback base/default patterns.
Question 5 of 6 · Composition and Composition Arcs
The session layer of a stage authors variantSelection = "damaged" for the "shadingVariant" variant set on /World/Prop. The root layer (weaker in the layer stack) authors variantSelection = "pristine" as its default selection for the same variant set. Which variant is composed onto the prim?
Variant selections are ordinary metadata opinions subject to normal LIVRPS/local layer-stack strength rules. The session layer sits above the root layer as the strongest sublayer, so its selection ("damaged") wins over the root layer's default ("pristine").
Question 6 of 6 · Composition and Composition Arcs
/World/City carries a payload targeting City_payload.usd. Inside that payload layer, the prim /World/City/Building has its own reference arc pointing to Building_lib.usd for detailed geometry. If the City payload is left unloaded when the stage is opened, what happens to the content from Building_lib.usd?
Payloads defer composition of their entire target subtree. While unloaded, none of that subtree — including any nested composition arcs such as the Building reference — is composed onto the stage at all. Loading only occurs once the payload arc itself is loaded.
Ready for the real thing?
The full course: two full-length practice tests, video lessons for every exam domain, hands-on labs and detailed explanations.
$109.99$34.99 with code FREETEST33 — valid through September 7.