Development Paths#

NVIDIA Omniverse™ is modular and extensible. Your starting point depends on factors such as:

  • New Applications vs. Integrations: Are you building something new or adding Omniverse functionality to an existing application?

  • Use Case: What are you aiming to develop? Is it a 3D application, a service, or something else?

  • Team Structure and Skills: What skills does your team bring, and how are you planning to manage deployment?

The sections that follow help you identify the most suitable Omniverse solutions for handling data, building applications, and deploying them.

Important

Are you familiar with Universal Scene Description (OpenUSD)?

  • No

    If you’re completely new to OpenUSD, begin by learning the fundamentals. Even if your workflow does not involve advanced OpenUSD management or authoring, this foundational knowledge is valuable for effectively using Omniverse. Explore the OpenUSD Learning Resources.

  • Yes

    Proceed with the development paths that align with your project goals.


Choose a Development Path#

Omniverse offers development paths for different project goals and needs. The following sections describe the key paths and technologies to consider:

OpenUSD Data Exchange#

For developers focused on authoring, converting, or managing OpenUSD content, several tools and solutions are available:

Content Authoring#



  • USDRT and Fabric: Performance and Scalability in Kit-Based Applications

    Access tools for GPU-accelerated OpenUSD data manipulation and scene management within Omniverse Kit-based applications.

    USDRT (Python and C++): An Omniverse library that mirrors the OpenUSD API (and is API-compatible in most cases) but reads and writes data to and from Fabric instead of OpenUSD. It lets developers and technical artists move to Fabric at low cost: they can start from existing OpenUSD code or write new code with OpenUSD APIs they already know.

    Fabric (C++ only): An Omniverse library for high-performance creation, modification, and access to scene data. It also communicates scene data between the CPU and GPU, and with other Fabric clients on a network.

Enterprise Data Management and Collaboration#

Enterprises handling extensive OpenUSD content can use the Enterprise Nucleus Server for efficient data management and collaboration. Setting up and managing this server generally requires IT/DevOps expertise and appropriate organizational permissions.

OpenUSD Support in Third-Party Applications#

For those using popular Digital Content Creation (DCC) applications with OpenUSD support, use their native capabilities where available. Alternatively, explore NVIDIA’s connectors as integration resources. However, these connectors are community-managed, and native application support might be more robust.

A collection of importers, exporters, converters, and USD file format plug-ins that enable various 3D applications, products, and file formats to exchange data using OpenUSD is available in the Omniverse USD Connectors catalog.


Application and Service Development#

You can build OpenUSD-based applications and services from scratch with the Kit SDK or by integrating Omniverse Libraries into existing applications.

Omniverse Libraries#

Omniverse Libraries, part of NVIDIA Agent Toolkit, provides prebuilt capabilities for building simulation-ready worlds that physical AI teams can use to train, test, and validate systems before real-world deployment. Libraries are modular, standalone C and Python software components. Developers can integrate them into existing applications for OpenUSD data interoperability, rendering, physics, sensor simulation, validation, and runtime workflows. AI agents can use them as tools to build those worlds faster.

For more information about Omniverse Libraries, see Omniverse on the NVIDIA Developer site.

Omniverse Kit SDK#

Use the Omniverse Kit SDK to create new applications or services that integrate complex domains such as high-fidelity rendering, physics, OpenUSD, and interactive user interfaces. The SDK is particularly useful if your expertise lies outside 3D graphics and low-level application development, because its integrations let you focus on your domain-specific needs and build applications and services for specialized workflows.

Key features include:

  • Language Support: Develop in Python or C++.

  • OpenUSD Foundation: Build on OpenUSD to create, manipulate, and render rich 3D content.

  • GPU Acceleration: Use GPU acceleration for high-fidelity visualization and simulation.

  • Extensibility: Create specialized extensions that provide dynamic user interfaces, integrate with various systems, and offer direct control over OpenUSD data.

For more information about the Kit SDK, see the following resources:

Content Streaming and Deployment#

You can stream applications built with the Kit SDK to web browsers and interact with them there. You can deploy applications using self-managed solutions or NVIDIA’s managed platforms, depending on the needs of your developers and IT/DevOps teams.

Front-End Development for Streaming#

Front-end developers can use Omniverse tools to build web clients that embed and interact with streaming applications built with the Kit SDK. This enables integration of high-quality 3D rendering into web experiences.

  • Omniverse WebRTC Streaming Library: A library for managing WebRTC streaming connections to Omniverse Kit applications. For more information, see the WebRTC Streaming Library overview.

  • Create OV WebRTC App: A command-line tool for scaffolding web streaming clients for Omniverse Kit applications. For more information, see the Web Sample overview.


Deployment Options#

IT/DevOps teams can choose between self-managed deployment starting from development artifacts or NVIDIA managed solutions, depending on organizational needs.

  • Custom Deployment: Use build artifacts (application packages or containerized images) from the Kit SDK to deploy applications and services, offering control and flexibility. The Kit SDK provides tooling to create both application packages and containers.

  • Omniverse Streaming on NVCF: A self-hosted reference architecture for deploying and scaling streaming applications on NVIDIA Cloud Functions (NVCF).

For more information, see the Omniverse Streaming on NVCF documentation.