Skip to content

Feature Roadmap

We're building toward complete OpenUSD parity. This page tracks what's done, what's in progress, and what's planned.

Each feature is verified against Pixar's reference implementation. When behavior is ambiguous, we match what OpenUSD does.

Formats

FormatReadWriteNotes
USDA (.usda, text)Parser + serializer. Designed for diff-friendly round-trips.
USD (.usd)Treated as either USDA (text) or USDC (binary) depending on header (PXR-USDC).
USDC (.usdc, "crate")⚠️Reader aims for real-world compatibility. Writer is minimal and covers common authoring types.
USDZ (.usdz)Browser-first ZIP parsing/writing utilities. See docs/FORMATS.md for details.

Composition

We're implementing full Pcp (Prim composition) behavior. Current status:

FeatureStatusNotes
Sublayers (subLayers)✅ DoneStrength ordering matches OpenUSD.
References✅ DoneInternal and external references.
Payloads✅ DoneSync expansion. Streaming policies planned.
Variants (variantSets, variants)✅ DoneSelection and expansion.
Inherits (inherits)✅ DoneClass opinion inheritance.
Specializes🔜 PlannedOn roadmap.
Relocates🔜 PlannedOn roadmap.
Value clips🔜 PlannedOn roadmap.
Full Pcp prim indexing🔄 In progressIncremental work toward full parity.

Schema APIs

The core runtime (SDF/Layers + composition + value decoding) is the foundation. Typed schema APIs come next.

AreaStatusNotes
SdfPath✅ DonePath parsing, canonicalization, utilities.
SdfLayer in-memory model✅ DonePrims, properties, metadata, timeSamples.
UsdStage convenience API✅ DoneFile loading, composition, resolver integration.
UsdGeom typed API🔜 PlannedMesh, Xform, Camera, etc.
UsdShade typed API🔜 PlannedMaterial, Shader, etc.
UsdSkel typed API🔜 PlannedSkeleton, animation.
MaterialX parsing✅ DoneXML to layer conversion for material workflows.

Value Types

CategoryStatusNotes
Scalars (bool/int/float/double/string/token/asset)✅ DoneFull support.
Tuples / vectors✅ DoneAll vec2/3/4 variants, float and double.
Matrices✅ DoneMatrix4d, verified against OpenUSD.
Arrays (numeric + token/path arrays)✅ DoneIncluding USDC compression.
Dictionaries✅ DoneNested dictionary support.
ListOps (references/payloads/path list ops)✅ DonePrepend, append, delete semantics.
Array edits (ValueRep::IsArrayEdit)🔜 PlannedCurrently parsed as raw values.

Environments

EnvironmentStatusNotes
Browser (modern)Designed for browser-first parsing and utilities.
Node.jsUsed for tests and tooling.
WASM requiredNot required. Pure JS/TS.

Released under the MIT License.