OpenUSD v25.02 is now available on GitHub, and its core non-imaging libraries can be installed via PyPI with the command line.
This release expands OpenUSD’s alignment into content interoperability domains for materials and color respectively via OpenPBR and Color Interop Forum initiatives, and continues momentum along many major development tracks such as validation and animation splines.
MaterialX / OpenPBR
OpenUSD enables the OpenPBR shading model for broader material interoperability. The latest release is compatible with OpenPBR via MaterialX 1.39 or 1.38.10-OpenPBR. While the v25.02 build defaults to MaterialX 1.38.10, developers can specify the later versions of MaterialX in order to leverage OpenPBR in their content.
Color Space API
Developers now have a declarative way to reason about color space in OpenUSD content. Color Management embodies a broad, holistic approach to consistently handling color across various devices, contexts, and workflows. Within Color Management, Color Transformation is the mathematical mechanism for the conversion of colors between color spaces, and this is the area addressed by OpenUSD’s new facilities for specifying color.
A color space can be applied to a prim on a USD stage in order to declare the color space that applies to any attributes within the prim, or directly on an attribute when specific attributes might differ from the prim’s color space.
UsdColorSpaceAPI is the API schema that introduces a colorSpace property for authoring color space opinions, and provides a mechanism to determine the applicable color space within a scope through inheritance. This schema may be applied to any prim to introduce a color space at any point in a compositional hierarchy.
For a list of built-in color space token values, see GfColorSpaceNames. The built in color spaces reflect the recommendations of the Color Interop Forum (CIF), and follow the CIF naming convention.
UsdColorSpaceDefinitionAPI is an API schema for defining a custom color space. This facility is useful for describing specialized color matching and transformation workflows.
Optimizations to Sublayer change processing
Change processing has been optimized for adding, removing, and muting sublayers. This is key for organizational and departmental workflows, where users can operate over the scene content in separate sublayers. Each department can work independently while contributing to a unified whole.
usdchecker and the New Validation Framework
All usdchecker rules have been ported to the new C++-based validation framework. With the new framework, usdchecker now also supports additional options to control validation of variants. This is often important for developers to be able to target specific variant sets, in order to avoid the performance hit of combinatorially validating every possibility on content that has deeply nested variants.
Semantic Labels in usdview
usdview now displays resolved semantic labels in its property and metadata introspection UI, and OpenUSD has an example asset to demonstrate usage of semantic labels. This further eases development and onboarding with UsdSemantics for ground truth labeling, as outlined in the v24.11 release blog.
Scalar Translate and Scale XformOps
UsdGeomXformable now supports scalar translates and scales, e.g., translateX, translateY, and translateZ are available as individual transform operations. This is another step towards full animation spline workflows in OpenUSD, where it can be common to independently animate scalar translates and scales on objects and characters.
Increased the default version for newly-created binary files to 0.10.0
An important technical note to consider is that OpenUSD v25.02 updates the default file version for newly-created binary (USDC) files to 0.10.0, which requires OpenUSD v23.11 or newer. This can be overridden to prior versions via the USD_WRITE_NEW_USDC_FILES_AS_VERSION environment variable. See the version history in pxr/usd/usd/crateFile.cpp for valid values.
Developers should plan accordingly if they are supporting pipelines where content created in OpenUSD v25.02 is intended to be used in runtimes using OpenUSD v23.08 or earlier.
Check out the full release notes on GitHub.
In addition, Pixar’s presentations on The State and Future of USD Animation Characters to the Metaverse Standards Forum and on OpenExec to the ASWF USD Working Group have been added to the downloads page.
Interested in learning more about using OpenUSD? Take courses from NVIDIA’s free Learn OpenUSD series, which now has new courses on model kinds, basic animation, and strength ordering.
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.