Skip to main content

Why and What is USD?

Introduction to USD and reasons to adopt it

Why USD

USD Explainer Guide article provides great insights about why USD is very useful.

Let me paraphrase it:

Traditional pipeline production followed a waterfall model, where each stage involved a "baking" process. To make any alterations, you would need to return to the start and re-bake at each step along the way. Conversely, USD enables the seamless continuation of decisions throughout the pipeline by allowing live updates to existing USD layers. This is achieved through the creation of higher-order layers that can override an attribute or a value, thereby eliminating the need for baking the existing layers. Thus, USD significantly enhances team collaboration by enabling multiple individuals to work on different layers of the same assets or shots simultaneously. Team members can override each other's work in a non-destructive manner, preserving the integrity of the overall project.

What is USD

USD, short for Universal Scene Description, is a robust ecosystem featuring a versatile file format and a comprehensive Library API. The USD file format,which represents a USD layer, is capable of representing a wide array of 3D data, including scene hierarchies, geometries, instances, material networks, lights, cameras, volumes, coordinate systems, and shading nodes.

The accompanying USD API offers a suite of tools designed for broad adoption, enabling a wide array of applications to effectively interact with USD content.

This versatility is why USD has earned the name Universal Scene Description—it has the unique ability to "describe" scenes across any application that implements USD, independent of the operating system on which it runs.

In the screenshot provided, I've opened the ALab usd scene across various applications: Houdini, Omniverse, and Usdview.

Understanding a USD Asset

A USD Asset is content organized to facilitate efficient asset exchange. It boasts several key features:

  • The ability to load and unload the asset as needed.
  • Multiple layers to store data from various departments, such as modeling, materials, effects, lighting, and animation.
  • Flexibility for each layer to contain switchable variants, enhancing adaptability and collaboration.

Load and Unload

Unloading an asset effectively makes it resemble an empty folder, which can significantly lighten the scene. This feature is particularly beneficial when assembling scenes, as it helps manage resource usage efficiently.

Multiple Layers

This jar asset consists of three layers:

  • surfacing
  • modeling
  • assembly

Variants

Assets can contain multiple variant sets, yet only a single variant within each set can be active at any given moment.

Understanding a USD Shot

A USD Shot is a USD file structured to enhance shot exchange. It effectively combines distinct layers from various departments into one streamlined file.

Further Reading

USD Introduction Guides

USD Asset Structure Guidelines

info

Our USD workflow follows the following structure guidelines.

Example USD Assets

Alab

The ALab data set is the Animal Logic interpretation and implementation of real world production and pipeline concepts in USD.

Activision

Activision provides a USD data set from their Call of Duty franchise with some good instructions in the readme:

J Cube

3D Assets by J Cube Inc.

The Esper Room by J Cube Inc. is an excellent and user-friendly starting point for experimentation.