Quickstart Guide
If you’re already familiar with our new packages and want to jump straight to getting them installed then please go directly to our “Getting Started” section below.
Introduction
We are delighted to announce the release of a brand new bundle of OpenUSD packages supporting the import and export of USD scenes within the Unity Editor.
Universal Scene Description (USD) is an open source, high-performance, extensible software platform for the construction and interchange of animated 3D scenes and is gaining traction across a wide range of industries.
USD was originally conceived to meet the needs of large scale VFX productions. It is now seeing increasing adoption in the industrial sector for use cases such as digital twins and product configurators and is starting to play a role in certain large scale game productions.
These packages provide our next generation of USD support and supersede our previous Import & Export USD offering Unity USD SDK.
The bundle consists of 3 packages:
USD Importer (com.unity.importer.usd)
This package provides support for the import of USD assets into the Unity Editor. The importer is built on the ScriptedImporter API and imports assets stored in USD’s data format (with file extensions .usd, .usda, .usdc & .usdz) to Unity native representations.
The Importer supports both packaged USDZ files and multi-layer USD scenes composed from multiple files on disk. Imported assets are stored as artifacts in Unity’s Asset Database and any changes to the source asset files are tracked and reflected within the Editor.
All 3 Unity render pipelines are supported through the usage of Shader Graph functionality.
This package is currently at the pre-release stage in Unity’s package lifecycle.
USD Exporter (com.unity.exporter.usd)
This package provides support for the export of USD assets from the Unity Editor. The exporter can export scene data in all standard USD formats (.usda, .usdc, .usdz). Export of animated data is also supported via the Recorder package.
This package is currently at the experimental stage in Unity’s package lifecycle.
USD C# SDK (com.unity.usd.core)
This package provides native USD binaries and bindings for accessing the USD SDK from C# code. It acts as a common backend for both the importer and exporter packages.
The supported USD version is v23.02.
This package is currently at the pre-release stage in Unity’s package lifecycle.
Resources
OpenUSD is a high-performance extensible software platform for the construction and interchange of animated 3D scenes. USD was originally designed for authoring large-scale scenes collaboratively. It provides a powerful composition engine to enable scenes to be non-destructively assembled into a single, composed view from a large number of source assets. It is supported in a wide range of popular content creation applications.
The “Alliance for OpenUSD” is an Industry initiative working to foster the standardization, development, evolution and growth of OpenUSD. Their forum is a great place to connect with the OpenUSD community and ask questions.
The “Book of USD” is a good place to start to find out more about the OpenUSD framework.
Requirements
The minimum required Unity version is 2023.1. The packages support all current Unity Editor platforms and architectures on supported Unity versions.
For further details please see our package documentation:
Getting Started
Full installation instructions for the packages are included in the package documentation - please see the links in the preceding “Requirements” section.
If you’d like to get started right away then the packages can be installed by name via the Unity 2023.1+ Package Manager window.
Package names are as follows:
-
com.unity.importer.usd - USD Import.
-
com.unity.exporter.usd - USD Export.
-
com.unity.usd.core - USD C# SDK.
-
Please note com.unity.usd.core is installed automatically when either the importer or exporter are installed. You only need to install this by name if you are not using either import or export.
How to report bugs
Our packages are still in pre-release or experimental development stages. If you find a bug during testing of any of our USD packages, please log it according to the guidance here.
How to contribute to future plans for Unity’s content pipeline
To find out more about Unity’s future plans for our content pipeline and share your feedback please take a look at our “Content Pipeline and Package Management Roadmap” page.
Open Standards
Unity is committed to increasing its adoption of Open Standards to help deliver a common foundation for content creation, collaboration and interoperability.
Alongside the OpenUSD support announced today, Unity has recently released Unity glTFast ( forum post ), a package for efficient import and export of glTF™ 3D files, both at runtime and within the Editor.
We consider OpenUSD and glTF™ as complementary technologies that help users to build ever more powerful workflows and content pipelines. With these releases, users now have the flexibility to choose the format that best suits their requirements, for example OpenUSD for flexible, complex multi-layer content authoring and glTF™ for efficient runtime content delivery.
You can find more information on Unity glTFast in the Unity glTFast package documentation.
Notices
“Carbon Frame Bike” by Robert Schweier and prefrontal cortex is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
“Sponza22” by Frank Meinl, Katica Putica, Cristiano Siqueria, Timothy Heath, Justin Prazen, Sebastian Herholz, Bruce Cherniak and Anton Kaplanyan (2022), is licensed under the Academy Software Foundation license | Intel Graphics Sample Library.
“UsdCookie” and usd-wg/assets are licensed under the Apache License 2.0.