Omniverse Kit App Template Companion Tutorial

Welcome to the Companion Tutorial for the Omniverse Kit App Template Repository. This tutorial is designed for developers looking to gain a deeper understanding of creating applications within the NVIDIA Omniverse ecosystem using the Kit SDK.


Introduction

The kit-app-template repository introduces developers to application and extension development in Omniverse by providing a high-level overview and essential startup tools. This companion tutorial goes further, offering a more detailed look at Omniverse Kit SDK development.

Tutorial Overview

This guide covers several key areas, including:

  • Kit SDK Overview: A more detailed exploration of the Kit SDK, enhancing your understanding of its capabilities and the role it plays in Omniverse development.

  • Naming and Configuration: A functional explanation of application and extension naming, configuration files, recommended style, and best practices.

  • Extending Services: Guidance on extending the Kit Service template to include additional functionality.

  • Creating Custom Templates: Instructions for creating your own templates using the kit-app-template tooling for tailored development.

Aiming for Impact

By navigating through these topics in increased depth, our goal is to provide you with a clearer and more detailed understanding of Omniverse development tools and practices. We aim to equip you with practical knowledge that you can directly apply to your projects and leave you better equipped to start building your own GPU Accelerated Applications based on OpenUSD.

In Pursuit of This Goal, we’ll occasionally peel back a layer of abstraction to reveal the interaction between components. For instance, rather than using:

./repo.sh launch --dev-bundle

We’ll examine a way to accomplish the same thing via a command line arguments passed to Kit directly:

./_build/{platform}/{config}/kit/kit  _build/{platform}/{config}/apps/{app_name}.kit --enable omni.kit.developer.bundle

This direct approach will help in understanding the underlying mechanics and enable you to make more informed decisions.


Prerequisites

  • Have cloned the kit-app-template repository from GitHub.

  • A development machine with an NVIDIA RTX GPU and latest drivers installed.

  • Internet access and the ability to download the Omniverse Kit SDK and project files.

  • Some background in Python and/or C++ is helpful.