CINXE.COM
Omniverse Kit App Template Companion Tutorial — kit-app-template 106.5 documentation
<!DOCTYPE html> <html class="writer-html5" lang="en" > <head> <meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Omniverse Kit App Template Companion Tutorial — kit-app-template 106.5 documentation</title> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments_dark.css" type="text/css" /> <link rel="stylesheet" href="../_static/theme-switcher-general.css" type="text/css" /> <link rel="stylesheet" href="../_static/omni-style-dark.css" type="text/css" /> <link rel="stylesheet" href="../_static/api-styles-dark.css" type="text/css" /> <link rel="stylesheet" href="../_static/design-style.b7bb847fb20b106c3d81b95245e65545.min.css" type="text/css" /> <link rel="stylesheet" href="../_static/omni-style.css" type="text/css" /> <link rel="stylesheet" href="../_static/api-styles.css" type="text/css" /> <link rel="shortcut icon" href="../_static/favicon.ico"/> <!--[if lt IE 9]> <script src="../_static/js/html5shiv.min.js"></script> <![endif]--> <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> <script src="../_static/doctools.js"></script> <script src="../_static/mermaid-init.js"></script> <script src="../_static/theme-setter.js"></script> <script src="../_static/design-tabs.js"></script> <script src="../_static/version.js"></script> <script src="../_static/social-media.js"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> <link rel="next" title="The Omniverse Kit SDK" href="kit_sdk_overview.html" /> <link rel="prev" title="<no title>" href="../index.html" /> </head> <body class="wy-body-for-nav"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search" > <a href="https://docs.omniverse.nvidia.com/kit/docs"> <img src="../_static/main_ov_logo_rect.png" class="logo" alt="Logo"/> </a> <div role="search"> <form id="rtd-search-form" class="wy-form" action="../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> <p class="caption" role="heading"><span class="caption-text">kit-app-template</span></p> <ul class="current"> <li class="toctree-l1 current"><a class="current reference internal" href="#">Introduction</a><ul> <li class="toctree-l2"><a class="reference internal" href="#introduction">Introduction</a><ul> <li class="toctree-l3"><a class="reference internal" href="#tutorial-overview">Tutorial Overview</a></li> <li class="toctree-l3"><a class="reference internal" href="#aiming-for-impact">Aiming for Impact</a></li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="#prerequisites">Prerequisites</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="kit_sdk_overview.html">Kit SDK Overview</a></li> <li class="toctree-l1"><a class="reference internal" href="naming_and_configuration.html">Naming and Configuration</a></li> <li class="toctree-l1"><a class="reference internal" href="extending_services.html">Extending Services</a></li> <li class="toctree-l1"><a class="reference internal" href="extending_editors.html">Extending Editor Applications</a></li> <li class="toctree-l1"><a class="reference internal" href="customize_reference_apps.html">Customizing Reference Applications</a></li> <li class="toctree-l1"><a class="reference internal" href="using_python_pip_packages.html">Using Python Pip Packages</a></li> <li class="toctree-l1"><a class="reference internal" href="custom_templates.html">Custom Templates</a></li> <li class="toctree-l1"><a class="reference internal" href="packaging_app.html">Packaging Applications</a></li> <li class="toctree-l1"><a class="reference internal" href="next_steps.html">Where to go from here</a></li> </ul> </div> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" > <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="../index.html">kit-app-template</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <div role="navigation" aria-label="Page navigation"> <ul class="wy-breadcrumbs"> <li><a href="https://docs.omniverse.nvidia.com/kit/docs" class="icon icon-home"></a> »</li> <li>Omniverse Kit App Template Companion Tutorial</li> <li class="wy-breadcrumbs-aside"> </li> <li class="wy-breadcrumbs-aside"> <span> </span> </li> </ul> <hr/> </div> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div itemprop="articleBody"> <section id="omniverse-kit-app-template-companion-tutorial"> <h1>Omniverse Kit App Template Companion Tutorial<a class="headerlink" href="#omniverse-kit-app-template-companion-tutorial" title="Permalink to this headline"></a></h1> <p>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.</p> <hr class="docutils" /> <section id="introduction"> <h2>Introduction<a class="headerlink" href="#introduction" title="Permalink to this headline"></a></h2> <p>The <code class="docutils literal notranslate"><span class="pre">kit-app-template</span></code> 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.</p> <section id="tutorial-overview"> <h3>Tutorial Overview<a class="headerlink" href="#tutorial-overview" title="Permalink to this headline"></a></h3> <p>This guide covers several key areas, including:</p> <ul class="simple"> <li><p><strong><a class="reference internal" href="kit_sdk_overview.html"><span class="doc std std-doc">Kit SDK Overview</span></a>:</strong> A more detailed exploration of the Kit SDK, enhancing your understanding of its capabilities and the role it plays in Omniverse development.</p></li> </ul> <!-- --> <ul class="simple"> <li><p><strong><a class="reference internal" href="naming_and_configuration.html"><span class="doc std std-doc">Naming and Configuration</span></a>:</strong> A functional explanation of application and extension naming, configuration files, recommended style, and best practices.</p></li> </ul> <!-- --> <ul class="simple"> <li><p><strong><a class="reference internal" href="extending_services.html"><span class="doc std std-doc">Extending Services</span></a>:</strong> Guidance on extending the Kit Service template to include additional functionality.</p></li> </ul> <!-- --> <ul class="simple"> <li><p><strong><a class="reference internal" href="extending_editors.html"><span class="doc std std-doc">Extending Editor Applications</span></a>:</strong> Ideas for building upon the Base Editor application template by adding new features and capabilities.</p></li> </ul> <!-- --> <ul class="simple"> <li><p><strong><a class="reference internal" href="customize_reference_apps.html"><span class="doc std std-doc">Customizing Reference Applications</span></a>:</strong> Strategies for customizing provided reference applications, such as USD Explorer, to suit specific project needs.</p></li> </ul> <!-- --> <ul class="simple"> <li><p><strong><a class="reference internal" href="custom_templates.html"><span class="doc std std-doc">Creating Custom Templates</span></a>:</strong> Instructions for creating your own templates using the kit-app-template tooling for tailored development.</p></li> </ul> <!-- --> <ul class="simple"> <li><p><strong><a class="reference internal" href="packaging_app.html"><span class="doc std std-doc">Packaging Applications</span></a>:</strong> A practical example of application packaging and relevant best practices.</p></li> </ul> </section> <section id="aiming-for-impact"> <h3>Aiming for Impact<a class="headerlink" href="#aiming-for-impact" title="Permalink to this headline"></a></h3> <p>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.</p> <p><strong>In Pursuit of This Goal</strong>, we’ll occasionally peel back a layer of abstraction to reveal the interaction between components. For instance, rather than using:</p> <div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>./repo.sh launch --dev-bundle </pre></div> </div> <p>We’ll examine a way to accomplish the same thing via a command line arguments passed to Kit directly:</p> <div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>./_build/<span class="o">{</span>platform<span class="o">}</span>/<span class="o">{</span>config<span class="o">}</span>/kit/kit _build/<span class="o">{</span>platform<span class="o">}</span>/<span class="o">{</span>config<span class="o">}</span>/apps/<span class="o">{</span>app_name<span class="o">}</span>.kit --enable omni.kit.developer.bundle </pre></div> </div> <p>This direct approach will help in understanding the underlying mechanics and enable you to make more informed decisions.</p> </section> </section> <hr class="docutils" /> <section id="prerequisites"> <h2>Prerequisites<a class="headerlink" href="#prerequisites" title="Permalink to this headline"></a></h2> <ul class="simple"> <li><p>Have cloned the <a class="reference external" href="https://github.com/NVIDIA-Omniverse/kit-app-template"><code class="docutils literal notranslate"><span class="pre">kit-app-template</span></code> repository from GitHub</a>.</p></li> <li><p>A development machine with an NVIDIA RTX GPU and latest drivers installed.</p></li> <li><p>Internet access and the ability to download the Omniverse Kit SDK and project files.</p></li> <li><p>Some background in Python and/or C++ is helpful.</p></li> </ul> </section> </section> </div> </div> <footer> <hr/> <div role="contentinfo"> <img src="../_static/NVIDIA-LogoBlack.svg" class="only-light"/> <img src="../_static/NVIDIA-LogoWhite.svg" class="only-dark"/> <p> Copyright © 2021-2024, NVIDIA Corporation. </p> <p> <span class="lastupdated">Last updated on Dec 12, 2024. </span></p> </div> </footer> </div> </div> </section> </div> <script> jQuery(function () { SphinxRtdTheme.Navigation.enable(false); }); </script> </body> </html>