Omniverse Kit SDK Companion Tutorial#

Welcome to the Companion Tutorial for the Omniverse Kit SDK. 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 Omniverse Kit SDK (available from NGC) and the kit-app-template GitHub repository offer fundamental templates and tools to help you start building applications and extensions with the Omniverse Kit SDK. This companion tutorial provides a deeper look into Kit SDK development and how to make the most of these resources.

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#