Introducing The Future of Developing for 3D Virtual Worlds

New Omniverse Code Integrated Development Environment (IDE) Makes it Easier than Ever for Developers to Build Advanced Tools for 3D Design and Simulation

NVIDIA Omniverse
6 min readFeb 1, 2022

By Damien Fagnou, Senior Director of Software, Omniverse, NVIDIA

I am excited to announce that NVIDIA is releasing Omniverse Code — 2022.1 beta — based on Omniverse Kit SDK 103.0

Omniverse Code is a new Omniverse App that serves as an integrated development environment (IDE) for developers and power users to easily build their Omniverse extensions, apps, or microservices.

Omniverse Code includes Omniverse Kit SDK runtime, and provides the foundational tools, templates, and documentation in a simple-to-navigate interface, making it easier than ever to leverage the powerful capabilities of Omniverse Kit SDK when developing their own Omniverse-based projects.

In this post, I’ll walk through the exciting updates and new features we’ve built to make this IDE accessible, powerful, and useful for developers.

User Interface with Omni.ui Framework

Like Omniverse Create and View, Omniverse Code shares the same familiar interface as it is also built on the same Omniverse Kit SDK.

Omniverse Code App’s Interactive 3D Viewport

Omniverse Code’s default configuration makes available the below default tools and features:

If you are already an Omniverse user, you may recognize several of the default enabled extensions and tools. Plus, we’ve created several new ones specifically for this developer app.

Map of Omniverse Code App’s User Interface

1 File Opens the File Menu

2 Edit Opens the Edit Menu

3 Create Opens the Create Menu

4 Window Opens the Window Menu

5 Microservices Opens the Microservices Menu

6 Streaming Opens the Streaming Menu

7 Farm Opens the Farm Menu

8 Documentation Opens the Documentation Menu

9 Help Opens the Help Menu

10 Tool Bar Change the manipulator and control time

11 Stage See Stage for details.

12 Layer See Layers

13 Render Settings See RTX Render Settings for details.

14 Debug Settings Visualize all the internal of Code

15 Content Browser See Content Browser for details.

16 Console See Console Extension for details.

17 Script Editor See Script Editor for details.

18 Samples Eases Access to Sample Content in Omniverse Mount Content.

19 Properties Panel See Details Panel for details.

20 Commands See Command History for details.

21 Visual Studio (VS) Code Link See Visual Studio Code Link for details.

22 Viewport See Viewport for details.

23 Tabs See Tabs for details.

Extension Manager — Treasure Trove of Templates and Pre-Built Ingredients

One of the benefits of developing with Omniverse Code is that we freely provide the hundreds of NVIDIA-developed Omniverse Extensions for developers to freely edit, modify, or fully integrate into their own extensions or applications, so there is no need to start building from scratch.

Omniverse App’s Content Browser

The platform is extremely modular, easily extensible, and flexible, so developers or power users can tease apart extensions, use them as templates, or build feature sets on top of the existing extensions.

In Omniverse Code, the Extension Manager is one of the most valuable resources, housing over 200 NVIDIA-developed extensions that are part of Omniverse Kit SDK.

Integration with Visual Studio (VS) Code

To get started creating your own Omniverse Extension, navigate to the top left of the Extension Manage, press the green “plus” button > New Extension Template Project, then choose a location to store your project. Assign a Project Name, then an Extension Name (which will show in the UI), and save.

We have directly connected Omniverse Code to VS Code to ensure a more seamless development experience. Once you create an Extension Project in Omniverse Code, two things happen:

  • Omniverse Code automatically launches VS Code and sets up a Pylance-enabled project for you that includes all the necessary tools and resources you need to get started building quickly
  • Shows your new extension’s Omni.ui window that automatically updates as you edit your script in VS Code
Omniverse Code App’s Visual Studio Code Live Connection

We will soon release more videos that go into further detail on how to build and manage your code.

Interactive, Integrated Documentation

One of the most exciting new features is that now, all of our Omni.ui documentation is fully interactive and newly integrated directly into the UI of Omniverse Code. By interactive, I mean that the buttons, sliders, and other features within the documentation are fully functional. They also expose the code directly so you can easily copy/paste it as a whole, or modify it to suit your use case. With Omniverse Code, we’ve extended this interactive integration across other areas of the platform so you can get started faster than ever.

Omniverse Code App’s Interactive Documentation

One of the new frameworks for this release of Omniverse Kit is Omni.ui.scene, a new manipulator and scene overlay system that enables you to construct interactive manipulators that enable you to control objects within a fully 3D environment. Developers can get started with a provided collection of standard manipulators or build their own by writing very little Python code.

New 3D Viewport

With the release of Omniverse Kit 103 and Omniverse Code, I’m excited to showcase our new viewport updates with an entirely rebuilt menu that is now fully customizable and serves as the one-click portal into the various collection of tools available to developers. Plus, we are making available the viewport manipulator, fully available and programmable in Python of course, so developers can inspect, tweak, modify, or rebuild their own.

Developers can configure multiple viewports individually with unique cameras and renderers, unlocking the ability to pre-configure different vantages instantaneously. Interactive documentation for the new viewport is also available for further information.

See all of these features in this short introductory video.

Want to learn more?

Join us at NVIDIA GTC Omniverse Developer Day to watch new sessions built for developers on Omniverse and interact directly with our development team.

And don’t miss the special keynote, presented by our CEO Jensen Huang on March 22, 2022 at 8 A.M. PT, to hear all the latest technologies in AI and graphics.

To learn more about Omniverse Code, don’t miss the latest Twitch stream Wednesday, February 2 at 11AM PT / 8PM CET.

See the Omniverse Developer Resource Center for additional resources, view the latest tutorials on Omniverse, check out the forums for support, join the Omniverse Discord server to chat with the community, and subscribe to stay up-to-date on all things Omniverse news.

Meet the Author

Damien Fagnou, Senior Director of Software, Omniverse

Damien Fagnou is currently senior director, software at NVIDIA, working on the NVIDIA Omniverse group, where he brings together his expertise in software and VFX production to help build the Omniverse Kit Application platform. Before that, Damien was the senior vice president of technology for Technicolor, where he oversaw technology and software strategy for the VFX group, including MPC Film, for which he was the CTO for many years, working directly on the Oscar-winning films “The Jungle Book” and “1917.” During that time MPC also created the VFX for the groundbreaking “Lion King” remake. With almost 20 years of experience in VFX, many-time GTC contributor Damien looks forward to contributing to the future of graphics software at NVIDIA, built around compute, raytracing, and AI.

--

--

NVIDIA Omniverse

Learn from the developers and luminaries leveraging Universal Scene Description (OpenUSD) to build 3D workflows and metaverse applications.