Stage units#
Length, mass and up-axis metadata on the root prim, read once per Stage by the consumer. Every units-scaled default, on both the producer and the consumer side, derives from these values, so a hand-populated Stage that omits them silently simulates at SI scale.
Scope: stage, prim
/
What USD population writes#
Written only when the PHYSICS domain is selected (the profile requests exactly these three metadata paths). The values are USD stage metadata resolved with fallbacks, so the columns are always present on a PHYSICS populate even when the layer authors none of them. timeCodesPerSecond is not published.
Columns#
Column |
Type |
Required |
Producer writes |
If absent |
|---|---|---|---|---|
|
float64 |
no |
the stage’s resolved metersPerUnit metadata |
1.0 (SI). Any dtype other than float32/float64 is ignored as if absent. |
|
float64 |
no |
the stage’s resolved kilogramsPerUnit metadata |
1.0 (SI). |
|
uint64, TOKEN_ID |
no |
token id of the stage’s resolved upAxis metadata |
Z-up on the consumer. Only the string “Y” selects Y-up; every other token resolves to Z. Note USD’s own fallback is Y, so a stage that authors no upAxis is Y-up under USD but the producer publishes the resolved Y and the consumer honours it; only a hand-populated stage that omits the column gets Z. |
Notes#
Column names are usd-metadata:
. The dash makes collision with a USD property name impossible. The consumer additionally probes two legacy prims, /ovstage_population_stage_info and /ovpopulation_stage_info, with unprefixed names. The current producer never writes them; they exist for older stages only.
Units are read once when the consumer’s source is constructed. Writing them at a later ordinal has no effect on an attached simulation.