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.
Extending Editor Applications: Ideas for building upon the Base Editor application template by adding new features and capabilities.
Customizing Reference Applications: Strategies for customizing provided reference applications, such as USD Explorer, to suit specific project needs.
Creating Custom Templates: Instructions for creating your own templates using the kit-app-template tooling for tailored development.
Packaging Applications: A practical example of application packaging and relevant best practices.
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.