Main Concepts

This section provides an explanation of the main concepts/ terms used throughout Omniverse Isaac Sim.

Omniverse

Omniverse Nucleus

Omniverse Nucleus offers a set of fundamental services that allow a variety of client applications, renderers, and microservices to share and modify representations of virtual worlds.

Nucleus operates under a publish/subscribe model. Subject to access controls, Omniverse clients can publish modifications to digital assets and virtual worlds to the Nucleus Database (DB) or subscribe to their changes. Changes are transmitted in real-time between connected applications. Digital assets can include geometry, lights, materials, textures and other data that describe virtual worlds and their evolution through time.

This allows a variety of Omniverse-enabled client applications ( Apps, Connectors, and others) to share and modify authoritative representations of virtual worlds.

  • See Nucleus overview for a more in-depth look at Nucleus’s data model, architecture, and distribution platforms.

Omniverse Cache

Omniverse Cache is a simple service that can be used both on users’ workstations as well as within infrastructure to optimize data transfers between Nucleus and it’s Clients (Apps, Connectors, and others).

Live Sync

Live Sync mode enables real-time “live” editing of shared files on a Nucleus Server. The Live Sync button is on the top-right corner of the Workspace.

Omniverse Kit

NVIDIA Omniverse™ Kit is a toolkit for building native Omniverse applications and microservices. It is built on a base framework known as Carbonite that provides a wide variety of functionality through a set of light-weight plugins. Carbonite plugins are all authored with C interfaces for persistent ABI compatibility. A Python interpreter is provided for scripting and customization.

NVIDIA Omniverse™ Kit exposes much of its functionality through Python bindings. This provides an API that can be used to write new extensions to Omniverse Kit or new experiences for Omniverse.

Omniverse Launcher

The NVIDIA Omniverse Launcher is your first step into the Omniverse. It provides immediate access to all the apps, connectors and other downloads within the Omniverse.

Omniverse USD Composer

NVIDIA Omniverse™ USD Composer was an Omniverse app for world-building that allows users to assemble, light, simulate and render large scale scenes. It is built using NVIDIA Omniverse™ Kit. The Scene Description and in-memory model is based on Pixar’s USD. USD Composer takes advantage of the advanced workflows of USD like Layers, Variants, Instancing and much more.

Carbonite (carb)

The Carbonite SDK provides the core functionality of all Omniverse apps. This is a C++ based SDK with python bindings that provides features such as plugin management, input handling, file access, asset loading and management, thread and task management, and much more.

RTX - Real-Time mode

High quality real-time rendering mode.

RTX – Interactive (Path Tracing) mode

The highest quality, physically accurate rendering mode.

Extensions

Extensions are plug-ins to Omniverse Kit that extend its capabilities. They are offered with complete source code to help developers easily create, add, and modify the tools and workflows they need to be productive. Extensions are the core building blocks of Omniverse Kit based applications.

Omniverse Connect

Connectors are extensions and additional software layers on top of the open-source USD distribution that allow DCC tools and compute services to communicate easily with each other through the Omniverse Nucleus DB. Those extensions and additions are collectively known as NVIDIA Omniverse™ Connect.

USD

USD

Universal Scene Description (USD) is an easily extensible, open-source 3D scene description and file format developed by Pixar for content creation and interchange among different tools. As a result of its power and versatility, it’s being widely adopted, not only in the visual effects community, but also in architecture, design, robotics, manufacturing, and other disciplines.

MDL

Material Definition Language (MDL) is a NVIDIA-developed USD schema that represents material assignments and specifies material parameters.

Stage

The Omniverse Stage window allows you to see all the assets in your current USD Scene. The USD Stage is the USD abstraction for a scenegraph derived from a root USD file, and all of the referenced/layered files it composes. Listed in a hierarchical (parent/child) order the Stage offers convenient access and is typically used to navigate large scenes.

Prim

A Prim is the primary container object in USD: prims can contain (and order) other prims, creating a “namespace hierarchy” on a Stage, and prims can also contain (and order) properties that hold meaningful data. Prims, along with their associated, computed indices, are the only persistent scenegraph objects that a Stage retains in memory, and the API for interacting with prims is provided by the UsdPrim class.

PhysX

NVIDIA PhysX is a scalable multi-platform physics simulation solution. The NVIDIA Omniverse™ Physics simulation extension is powered by the NVIDIA PhysX SDK, and includes Rigid Body Simulation, Articulations, Deformable-Body Simulation, and Character Controller.

Isaac Sim

ROS / ROS2

The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications. Omniverse Isaac Sim provides many extensions, examples, and APIs for connecting to ROS and ROS2 workflows.

Dynamic Control

The Dynamic Control extension a set of utilities to control physics objects. It provides opaque handles for different physics objects that remain valid between PhysX scene resets, which occur whenever play or stop is pressed.

Note

omni.isaac.dynamic_control is deprecated.

Core API

The Isaac Core Extension in Isaac Sim provides high-level interfaces to PhysX and raw USD APIs. It abstracts away default parameters to simplify creation and manipulation of a simulated world and scenarios encountered in robotics simulators. Specifically, the extension allows for

  1. easy creation, manipulation, and management of the world, all its time-related events, and related physical and numerical parameters

  2. creation of various robotic tasks and controllers

  3. vectorized manipulation of reinforcement learning environments through various view classes such as ArticulationView, RigidPrimView, XFormPrimView, which provide high-level functionalities to manipulate in parallel sets of articulations, rigid prims, and xforms, respectively.

Riemannian Motion Policy (RMP)

Riemannian Motion Policy (RMP) is a set of motion generation tools that underlies most of our manipulator controls inside Omniverse Isaac Sim. It creates smooth trajectories for the robots with intelligent collision avoidance.

World

World is the core class that enables you to interact with the simulator in an easy and modular way. It takes care of many time-related events such as adding callbacks, stepping physics, resetting the scene, adding tasks, etc. The World class is a Singleton which means only one World can exist while running Omniverse Isaac Sim. Query the World for information about the simulation from different extensions.

Scene

A world contains an instance of a Scene, think about it as a scene management class that manages the assets of interest in the USD stage. It provides an easy api to add, manipulate and inspect different USD assets in the stage as well as setting its default reset states. Many of the object classes available which could be added to a Scene usually takes an already existing USD prim in stage or creates a new USD prim, thus providing an easy way to set/ get its common properties.

Task

The Task class in omni.isaac.core provides a way to modularize the scene creation, information retrieval, calculating metrics and creating more complex scenes with more involved logic.

Articulation

An articulated robot is a robot with rotary joints (e.g: a legged robot, a manipulator or a wheeled robot). In omni.isaac.core extension in Omniverse Isaac Sim there exists an Articulation class which enables the interaction with articulations that exists in a USD stage in an easy way.

Replicator

Replicator is a Synthetic Data Generation tool for creating parameterizable offline datasets in Omniverse Isaac Sim.

Synthetic Data Generation

Omniverse Isaac Sim supports Synthetic Data Generations workflows. See Replicator for more details.

Ground Truth

Omniverse Isaac Sim can be used to generate ground truth data that is very similar to real-life analogs. See Replicator for more details.