/USD.NET

OpenUSD (Universal Scene Description) by Pixar and translated by Unity

MIT LicenseMIT

piper-banner

dotnet add package UniversalSceneDescription

⠀ ⠀

OpenUSD - USD.NET

Universal Scene Description (USD) by Pixar and translated by Unity.

  • USD is a high-performance extensible software platform for collaboratively constructing animated 3D scenes, designed to meet the needs of large-scale film and visual effects production.
  • USD enables robust interchange between digital content creation tools with its expanding set of schemas, covering domains like geometry, shading, lighting, and physics.
  • USD’s unique composition ability provides rich and varied ways to combine assets into larger assemblies, enables collaborative workflows so that many creators can work together with ease, and more.

Introduction to USD - Tutorial - FAQ - Toolset

NVIDIA - Provides extensive resources and samples for USD.

Example Projects and Files

USD Core Package by Unity

This project now includes the OpenUSD (Universal Scene Description) from Unity. For more information, please refer to the Unity USD documentation.

Extracting Necessary DLLs

Extract the required native DLLs and the USD.NET managed DLL by following these steps:

  1. Add the com.unity.usd.core package to a new Unity Project.
  2. Include the sample and built the project.

Paths for DLLs

  • Native DLLs: Obtained from the build path:
    YourBuildPath/ProjectName_Data/Plugins/x86_64/...
    
  • Managed DLL (USD.NET): Obtained from the build path:
    YourBuildPath/ProjectName_Data/Managed/USD.NET.dll
    

Additional Required Files

You will also need USDA files for schemas and JSON files for plugInfo. These can be found in the following Unity Project path:

YourUnityProjectPath\Library\PackageCache\com.unity.usd.core\Runtime\Plugins\x86_64\Windows\lib\usd\...

Creating the NuGet Package

Remove the .meta files and include the necessary files into a Class Project. You can find the .csproj configuration for this project here.


For further details and updates, please visit the project repository.

Thank yu for your interest in the Universal Scene Description (USD.NET) project. Feel free to contribute and enhance the package further!