Alliance for OpenUSD · Schema
USDLayer
A USD layer — the fundamental unit of composition in OpenUSD, representing a file or in-memory container for scene description data including prim specs, property specs, and composition arcs.
3DInteroperabilityLinux FoundationMetaverseOpenUSDSpecificationStandardsUSDVisual Effects
Properties
| Name | Type | Description |
|---|---|---|
| identifier | string | The unique identifier (path or URI) for this layer. |
| realPath | string | The resolved filesystem path for this layer. |
| fileFormat | string | The file format identifier for this layer. |
| defaultPrim | string | The default prim path to use when referencing this layer. |
| startTimeCode | number | The start time code for the layer's time-sampled data. |
| endTimeCode | number | The end time code for the layer's time-sampled data. |
| framesPerSecond | number | Frames per second for time code interpretation. |
| timeCodesPerSecond | number | Time codes per second (usually matches framesPerSecond). |
| metersPerUnit | number | Scene scale in meters per USD unit. |
| upAxis | string | The up axis convention for the scene. |
| documentation | string | Human-readable documentation for the layer. |
| subLayerPaths | array | Ordered list of sublayer paths composed by this layer. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/aousd/refs/heads/main/json-schema/aousd-usd-layer-schema.json",
"title": "USDLayer",
"description": "A USD layer — the fundamental unit of composition in OpenUSD, representing a file or in-memory container for scene description data including prim specs, property specs, and composition arcs.",
"type": "object",
"properties": {
"identifier": {"type": "string", "description": "The unique identifier (path or URI) for this layer.", "example": "/assets/characters/hero/hero.usda"},
"realPath": {"type": "string", "description": "The resolved filesystem path for this layer.", "example": "/studio/assets/characters/hero/hero.usda"},
"fileFormat": {"type": "string", "description": "The file format identifier for this layer.", "enum": ["usda", "usdb", "usd", "usdz"], "example": "usda"},
"defaultPrim": {"type": "string", "description": "The default prim path to use when referencing this layer.", "example": "Hero"},
"startTimeCode": {"type": "number", "description": "The start time code for the layer's time-sampled data.", "example": 1.0},
"endTimeCode": {"type": "number", "description": "The end time code for the layer's time-sampled data.", "example": 240.0},
"framesPerSecond": {"type": "number", "description": "Frames per second for time code interpretation.", "example": 24.0},
"timeCodesPerSecond": {"type": "number", "description": "Time codes per second (usually matches framesPerSecond).", "example": 24.0},
"metersPerUnit": {"type": "number", "description": "Scene scale in meters per USD unit.", "example": 0.01},
"upAxis": {"type": "string", "enum": ["Y", "Z"], "description": "The up axis convention for the scene.", "example": "Y"},
"documentation": {"type": "string", "description": "Human-readable documentation for the layer.", "example": "Hero character asset for production."},
"subLayerPaths": {"type": "array", "items": {"type": "string"}, "description": "Ordered list of sublayer paths composed by this layer.", "example": ["/assets/characters/hero/hero_rig.usda", "/assets/characters/hero/hero_model.usda"]}
},
"required": ["identifier"]
}