Nvidia Omniverse is a computing platform built to enhance digital design and development by integrating 3D design, spatial computing and physics-based workflows across Nvidia tools, third-party apps and artificial intelligence (AI) services. Created specifically for developing applications in the metaverse, the real-time platform is used for building digital twins of products, factories, warehouses and infrastructure. It can also streamline the creation of 3D-related media for entertainment and product demonstrations, as well as enterprise media content rendered on computers, phones and extended reality (XR) devices.
The platform, launched in 2022, is available as a cloud service or a private instance running on premises. Additionally, it supports plugins and integrations for deploying omniverse content, applications and autonomous control systems across cars, robots, building controls, equipment and medical devices.
Nvidia Omniverse helps streamline workflows for designing, simulating and optimizing equipment, products and processes across different roles and expertise for virtual design. For example, Mercedes-Benz and BMW are using it to improve their product and factory designs. It is also helping companies optimize mobile network deployment, warehouse layouts, building construction and smart city deployments.
The platform can also serve as an integration tier for workflows that span tools from different vendors. This can reduce the integration challenges in crafting point-to-point integrations for specific workflows. For example, teams could use design tools from one vendor, simulation tools from another and rendering engines from a third to streamline virtual development efforts.
Nvidia Omniverse, through its Omniverse Replicator and Isaac Sim components, can also help generate synthetic data for testing various autonomous systems, AI algorithms and robot control systems. This function can streamline the development of more capable autonomous cars, warehouse materials handling equipment and robotic controls. The final control software can be sent to various target controllers, including Nvidia-specific embedded hardware or third-party controllers supporting standards such as Unified Robot Description Format or Robot Operating System.
In addition, Nvidia Omniverse also supports more consumer-facing development for generating avatars, asking questions about physical products and visualizing the furniture layout in a 3D representation of rooms.
Omniverse supports various specifications and standards that simplify the exchange of 3D-related data across multiple tools. Nvidia is working with the Universal Scene Description (USD) community to extend the specification to support Material Definition Language (MDL) and PhysX capabilities.
The essential value of the Nvidia Omniverse platform comes from its support of a rich collection of Nvidia, third-party, and open source tools and formats. These include plugins, extensions or services, such as the following:
Nvidia Omniverse helps streamline the development lifecycle of physical products and virtual experiences across various roles and expertise. The platform can help businesses manage the complexity of building new products, designing more efficient facilities and creating more engaging user experiences. Here are some specific ways the platform is used by businesses:
Nvidia Omniverse is currently the most comprehensive platform for integrating 3D and physics-based workflows across various cloud services, third-party applications and rendering engines. The platform's tools and supporting services ecosystem have been undergoing rapid innovation. In the short term, Nvidia said it will continue to improve the integration of 3D workflows with its AI hardware and tools.
Nvidia is also actively working with various industry groups and standards bodies to improve the capabilities of multiple standards, specifications and open source tools. For example, it is a member of the OpenXR community, developing standards to streamline XR and spatial computing experiences across different devices. It is also helping guide the Graphics Library Transmission Format standard for exchanging 3D content for consumer-facing applications. Additionally, it is helping to extend the USD format beyond 3D scenes to support more complex engineering and simulation workflows. Nvidia will continue to help weave these capabilities into the Omniverse platform.
The platform also supports a rich marketplace to make it easier for vendors, domain experts and systems integrators to monetize their expertise and services. It will continue to enrich these offerings. These enhance the ability for enterprise users to mix and match design, development, test and monitoring capabilities across various tools. Nvidia currently has partnerships with leading product lifecycle management, geographic information system, CAD, computer-aided engineering, simulation and gaming engine vendors. Nvidia Omniverse will continue to streamline workflows across these tools.
I was trying to use new omniverse functionality on an existing model, but the only way that I've found to include objects on the USD Stage is creating them after de USD Stage. I've tried to move all objects into USD Stage treenode, but it's now working when I save the USD Stage.
The association between a simulation object and a usd stage prim is created in the OnReceive event of the USD Stage object. This happens when an object is created in or moved into the USD Stage using moveobject(). Using transfernode() will only transfer the node in the tree without firing the associated events.
The Move into Highlighted button on the Edit Selected Objects window calls transfernode() to change the tree structure of the model. This doesn't fire the OnReceive of the USD Stage object that creates the simulation object/prim associations when the USD Stage object is already connected to a usd stage. See the video below.
I'll add a case to the development list to consider adding a way to create new simulation object/prim associations for objects that were transferred into a USD Stage without calling its OnReceive event.
In the meantime, in order to create those associations, you either need to (1) save the usd stage after transferring the objects as shown in the first video, (2) use moveobject() to move simulation objects into the USD Stage object, or (3) create the objects directly in the USD Stage.
93ddb68554