THE LINUX FOUNDATION PROJECTS

AOUSD Announces New Member Milestones and Industrial Momentum. Details »

OpenUSD v26.05 is a production-focused release centered on reliability and authoring clarity across real pipeline workflows. Rather than a single headline feature, this release combines high-impact improvements across build and deployment, USD composition performance, prototype traversal semantics, validation migration, and day-to-day documentation.

This release also continues several release-to-release transitions already underway in the ecosystem, including validation framework adoption and particle-field workflow support introduced in v26.03.

OpenUSD v26.05 is now available on GitHub, and its core non-imaging libraries can be installed via PyPI with the command line.

pip install usd-core

Here are the major highlights for this release.

Expanded Build Support

OpenUSD v26.05 expands build_usd.py support for iOS and visionOS Simulators, while also extending CI coverage with wasm and wasm64 builds. Together, these updates broaden where teams can validate and deploy USD-based workflows.

The release also updates key build dependencies and compatibility points, including MaterialX v1.39.4 and OCIO 2.4.2 for macOS builds to avoid newer Xcode issues. In package support, usd-core removes Python 3.8 and adds Python 3.14.

USD Composition Performance Improvements

This release includes measurable improvements in composition-heavy workflows. Memory use for map function computations for implied inherits dropped by around 8% in production shots used for testing, and by 17% in one reported extreme case (from 4.7G to 3.9G).

Investigation into unexpectedly long composition times for complex rigs in our rigging environment led to the discovery that deeply nested relocates arcs caused Map function computations to dominate composition time.  Ongoing work has already noticeably improved that cost, and we are continuing the investigation into further improvements.

HasAbstractSpecifier for Prototype Traversal

OpenUSD v26.05 adds support for detecting prims with a class specifier through a new prim flag (HasClassSpecifier) and uses that capability in prototype filtering. This addresses a practical traversal gap where concrete subgraphs beneath abstract ancestors were difficult to target with predicates.

The underlying change enables predicate patterns such as HasDefiningSpecifier && !HasClassSpecifier, and related updates apply the new predicate for prototype traversal behavior. This is especially relevant to PointInstancer prototype organization where community discussions have highlighted lower authoring friction when using class containers compared with over-based patterns in API-driven authoring. The prototype organization guidance has been updated accordingly.

Validation Framework Matures

Validation tooling continues to shift toward UsdValidation. In v26.05, OpenUSD adds Python wrappers for registering validators, making validator integration more accessible for pipeline tooling and plugins.

At the same time, UsdUtilsComplianceChecker now warns when used, reinforcing the migration path established in recent releases. Building on the broader validation transition seen in v25.11 and v26.03, this release provides another concrete step toward a unified validation workflow.

Particle Fields and Imaging Integration

Building on the particle-field foundation introduced in v26.03, v26.05 adds an SPZ-to-USD converter example for particle field data and introduces a new HdsiParticleFieldConversionSceneIndex filter that converts particle fields to points to support renderers that cannot natively render particle fields.

Time and Animated Values User Guide

OpenUSD v26.05 adds a new Time and Animated Values user guide. The guide covers TimeCodes and layer offsets, with additional animated-data updates planned.

For teams onboarding new users or standardizing authoring patterns, this documentation addition provides a clearer reference point for time-sampled data and composition-time behavior.

Migration and Compatibility Notes

Binary .usd and .usdc files older than version 0.8.0 are now on an active deprecation path. Version 0.8.0 completed a series of substantial architectural improvements and optimizations for the format, and became the default crate version in OpenUSD v20.11.  You can set PXR_USDC_EMIT_DEPRECATION_WARNINGS=1 to emit warnings when opening these files, and the changelog notes this warning is expected to become enabled by default in the next release.

Python 3.8 support has been removed from usd-core, while Python 3.14 support has been added. Teams should update CI, build matrices, and runtime baselines accordingly.

Sdr API and terminology updates continue in this release (including transitions from sourceType to shadingSystem and from family to function), and clients still using UsdUtilsComplianceChecker should continue migration to the UsdValidation framework.

Check out the full release notes on GitHub.