THE LINUX FOUNDATION PROJECTS

AOUSD Announces New Member Milestones and Industrial Momentum. Details »

Netflix Animation Studios ALab Copyright 2025 Netflix, Inc. All rights reserved.

OpenUSD v26.03 broadens the reach of the ecosystem in two directions at once: toward emerging 3D content formats with a new schema for 3D Gaussian Splats, and toward entirely new deployment targets with WebAssembly build support. Alongside these headline additions, this release delivers a major upgrade to USD’s core value resolution engine and continues to advance rigging, rendering, and performance.

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

Shell
pip install usd-core

Here are the major highlights for this release.

Particle Field Schemas

This release introduces the UsdVolParticleField schema family, including UsdVolParticleField3DGaussianSplat — a schema for representing 3D Gaussian Splat data as a first-class USD prim type. Proposed by the AOUSD Emerging Geometry Interest Group, this work brings one of the fastest-growing 3D capture and radiance-field formats into the USD ecosystem. A reference Gaussian splat renderer (hdParticleField) is also available in the imaging examples folder for testing and conformance. You can test this now with usdview. A script to convert PLY containing Gaussians to USD is also available in the hdParticleField examples folder.

Netflix Animation Studios ALab Copyright 2025 Netflix, Inc. All rights reserved.

For a deeper dive into how Gaussian Splatting in OpenUSD came together across the Academy Software Foundation (ASWF) and the Alliance for OpenUSD, watch Gaussian Splatting in OpenUSD, presented at this year’s ASWF Open Source Forum.

WebAssembly Support

OpenUSD can now be compiled to WebAssembly. Build support for both wasm32 and wasm64 targets has been added using the emscripten compiler (PR: #3832, #3833). A new wasmFetchResolver example demonstrates loading and interacting with USD scenes directly inside a web browser via HTTP protocol — lowering the barrier for web-based 3D tooling and viewers built on USD.

Sparse Array-Edit Overrides

The sparse array-edit overrides proposal has been implemented. Layers can now override individual elements of array-valued attributes without replacing the entire array. This required a significant rewrite of USD’s core value resolution code for both metadata and attribute values. From adjusting a handful of vertices on a film-resolution character mesh to tweaking fastener positions in a million-part assembly, each change is expressed as a lightweight delta layer that composes cleanly over the upstream data.

OpenExec: Forward Kinematics Controller

Building on the OpenExec foundation introduced in v25.08, this release adds an IrFkController schema — the beginnings of Invertible Rigging capabilities within USD. The controller provides forward (and inverse) FK computations that take scalar translate and rotate inputs along with a parent space to produce a posed space (and vice versa). While still early and not for production use, it demonstrates the direction OpenExec is heading in for rigging workflows.

Cycle detection has also been improved: data cycles formed across multiple compilation rounds are now caught, and the runtime returns control to the client with a TF_ERROR instead of aborting the process.

Deferred Skinning in Storm

A new vertex shader-based skinning prototype enables true “bind-state” instancing for UsdSkel in Storm. When enabled via HD_ENABLE_DEFERRED_SKINNING=1, skinning and deformation are performed per-instance in the vertex shader rather than through extComputations, which can significantly reduce draw overhead for instanced skeletal meshes.

Performance Optimizations

Several targeted optimizations make this release measurably faster. Composition dependency computation has been streamlined, reducing stage load time by approximately 11% in one production shot (from 3.5s to 3.1s). A fix for .usdc sublayers with heavily-connected relationships brought a 200x improvement in a reported case — from 20 seconds down to 0.1 seconds for a sublayer containing a relationship with 10,000 targets. On the rendering side, Storm now supports targeted mesh invalidation for transforms, extents, points, and normals without triggering a full primvar update, and resource registry buffer resolution has been optimized for buffers that require no work.

UsdImaging Scene Delegate Deprecation

UsdImaging’s legacy scene delegate mode is now deprecated in favor of scene index mode. The USDIMAGINGGL_ENGINE_ENABLE_SCENE_INDEX  environment variable now defaults to 1, and a one-time deprecation notice will be issued if it is overridden back to 0. This completes the multi-release transition that began with scene index feature parity in v25.08 and the switch to the scene index default in v25.11.

usdchecker Updates

usdchecker has completed its transition to the validation framework, with the previously deprecated UsdUtilsComplianceChecker now fully removed. A new –includeKeywords option lets users run only validators matching a specific set of keywords, making targeted validation more practical. The –arkit flag has also been deprecated.

Python 3.8 Deprecation Notice

Python 3.8 support is deprecated as of this release and will be removed in the next. Projects still on Python 3.8 should plan to upgrade accordingly.

Check out the full release notes on GitHub.

Interested in learning more about using OpenUSD? Access NVIDIA’s free Learn OpenUSD resources and watch the OpenUSD Certification study series. When you’re ready, get certified

If your company would like to join the Alliance for OpenUSD, sign up to become a member. Follow AOUSD on Facebook, Instagram, LinkedIn, X, and YouTube, and get support from our community of artists, designers, and developers in our forum.

The Netflix Animation Studios ALab asset was used with permission according to the ASWF Digital Assets License v1.1