### Clone Web Viewer Sample Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Clone the web viewer sample repository to set up a web client for local streaming. Follow the Quick Start instructions in the README for dependency installation. ```base git clone https://github.com/NVIDIA-Omniverse/web-viewer-sample.git ``` -------------------------------- ### Launch Containerized Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Start a previously packaged containerized application. If multiple images exist, you will be prompted to select one. ```bash ./repo.sh launch --container ``` -------------------------------- ### Clone Web Viewer Sample Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Clone the web viewer sample repository to get the necessary client-side components for streaming. ```bash git clone https://github.com/NVIDIA-Omniverse/web-viewer-sample.git ``` -------------------------------- ### Launch Desktop Streaming Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Use these commands to start the application without a local window, preventing conflicts with the streaming client. ```bash ./repo.sh launch -- --no-window ``` ```powershell .\repo.bat launch -- --no-window ``` -------------------------------- ### Clone the Kit App Template Repository Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/README.md Use this command to download the kit-app-template to your local machine. Ensure you have Git installed. ```bash git clone https://github.com/NVIDIA-Omniverse/kit-app-template.git ``` -------------------------------- ### Configure Non-Default Installation Paths Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/windows_developer_configuration.md Specify custom installation directories for Visual Studio and the Windows SDK when they are not in default locations. ```toml [repo_build.msbuild] vs_path = "D:\\CustomPath\\Visual Studio\\2022\\Community" winsdk_path = "D:\\CustomPath\\Windows Kits\\10\\bin\\10.0.19041.0" ``` -------------------------------- ### Specify Windows SDK Version and Path Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/windows_developer_configuration.md Define specific Windows SDK version and path for environments with multiple installations. ```toml [repo_build.msbuild] winsdk_version = "10.0.19041.0" winsdk_path = "D:\\CustomSDKPath\\Windows Kits\\10\\bin\\10.0.19041.0" ``` -------------------------------- ### Specify Visual Studio Version and Edition Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/windows_developer_configuration.md Define preferred Visual Studio version, edition, and path for environments with multiple installations. ```toml [repo_build.msbuild] vs_version = "vs2022" vs_edition = "Community" vs_path = "D:\\AnotherPath\\Visual Studio\\2022\\Enterprise\\" ``` -------------------------------- ### Build Your Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_streaming_config.md After creating and customizing your application, build it using the 'build' command. ```bash ./repo.sh build ``` -------------------------------- ### Launch Packaged Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Execute a previously packaged application. ```bash ./repo.sh launch --package ``` ```powershell .\repo.bat launch --package ``` -------------------------------- ### Create New Extension Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/extensions/basic_cpp/README.md Commands to initialize a new extension using the repository's template script. ```bash ./repo.sh template new ``` ```powershell .\repo.bat template new ``` -------------------------------- ### Clone the Repository Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/extensions/basic_cpp/README.md Initial step to download the template repository to your local machine. ```bash git clone https://github.com/NVIDIA-Omniverse/kit-app-template.git cd kit-app-template ``` -------------------------------- ### Package Application as Container Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_composer/README.md Use the container flag to package the application. You will be prompted to select a .kit file for the entrypoint. ```bash ./repo.sh package --container ``` ```bash ./repo.sh package --container --name [container_image_name] ``` -------------------------------- ### Package Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Create a distributable package from the repository source. ```bash ./repo.sh package ``` ```powershell .\repo.bat package ``` -------------------------------- ### Clear Omniverse Kit Application Cache and Data (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/usage_and_troubleshooting.md Use this command to clear application-specific caches and user data for Omniverse Kit on Windows. This forces a fresh start for the application. ```powershell .\repo.bat launch -- --clear-cache --clear-data --reset-user ``` -------------------------------- ### Launch Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Launch your application using these commands. You will be prompted to select the desired service application to launch. ```bash ./repo.sh launch ``` ```powershell .\repo.bat launch ``` -------------------------------- ### Clear Omniverse Kit Application Cache and Data (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/usage_and_troubleshooting.md Use this command to clear application-specific caches and user data for Omniverse Kit on Linux. This forces a fresh start for the application. ```bash ./repo.sh launch -- --clear-cache --clear-data --reset-user ``` -------------------------------- ### C++ Pybind Module Definition Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/extensions/basic_python_binding/template/docs/Overview.md This C++ code defines a pybind11 module for an Omniverse Kit extension, exposing C++ interfaces and classes to Python. It includes examples of registering bound objects, defining properties, and implementing methods. ```APIDOC ## C++ Pybind Module Definition ### Description Defines a pybind11 module to expose C++ functionalities to Python. This includes registering interfaces, classes, properties, and methods for seamless interaction between C++ and Python within the Omniverse Kit environment. ### Method N/A (This is a C++ code definition, not an API endpoint) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## C++ Interface Definition (`{{ interface_name }}`) ### Description Defines the C++ interface `{{ interface_name }}` which is implemented in C++ and exposed to Python via pybind11. It includes methods for managing bound objects. ### Method N/A ### Endpoint N/A ### Parameters #### Path Parameters N/A #### Query Parameters N/A #### Request Body N/A ### Request Example ```cpp PYBIND11_MODULE({{ library_name }}, m) { using namespace {{ extension_namespace }} ; m.doc() = "pybind11 {{ extension_name }} bindings"; carb::defineInterfaceClass<{{ interface_name }}>(m, "{{ interface_name }}", "acquire_bound_interface", "release_bound_interface") .def("register_bound_object", &{{ interface_name }}::register{{object_name}}, R"( Register a bound object. Args: object: The bound object to register. )", py::arg("object")) .def("deregister_bound_object", &{{ interface_name }}::deregister{{object_name}}, R"( Deregister a bound object. Args: object: The bound object to deregister. )", py::arg("object")) .def("find_bound_object", &{{ interface_name }}::find{{object_name}}, py::return_value_policy::reference, R"( Find a bound object. Args: id: Id of the bound object. Return: The bound object if it exists, an empty object otherwise. )", py::arg("id")) /**/; py::class_<{{ object_interface_name }}, carb::ObjectPtr<{{ object_interface_name }}>>(m, "{{ object_interface_name }}") .def_property_readonly("id", &{{ object_interface_name }}::getId, py::return_value_policy::reference, R"( Get the id of this bound object. Return: The id of this bound object. )") /**/; py::class_>(m, "{{object_name}}") .def(py::init([](const char* id) { return Python{{object_name}}::create(id); }), R"( Create a bound object. Args: id: Id of the bound object. Return: The bound object that was created. )", py::arg("id")) .def_readwrite("property_int", &Python{{object_name}}::m_memberInt, R"( Int property bound directly. )") .def_readwrite("property_bool", &Python{{object_name}}::m_memberBool, R"( Bool property bound directly. )") .def_property("property_string", &Python{{object_name}}::getMemberString, &Python{{object_name}}::setMemberString, py::return_value_policy::reference, R"( String property bound using accessors. )") .def("multiply_int_property", &Python{{object_name}}::multiplyIntProperty, R"( Bound fuction that accepts an argument. Args: value_to_multiply: The value to multiply by. )", py::arg("value_to_multiply")) .def("toggle_bool_property", &Python{{object_name}}::toggleBoolProperty, R"( Bound fuction that returns a value. Return: The toggled bool value. )") .def("append_string_property", &Python{{object_name}}::appendStringProperty, py::return_value_policy::reference, R"( Bound fuction that accepts an argument and returns a value. Args: value_to_append: The value to append. Return: The new string value. )", py::arg("value_to_append")) /**/; } ``` ``` -------------------------------- ### Package from Existing Build Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Use the -p or --from-package flag to package an application from the _build/packages directory instead of the root folder. ```bash ./repo.sh package_container -p ``` ```powershell .\repo.bat package_container -p ``` -------------------------------- ### List Available Templates Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Lists available templates without initiating the configuration wizard. Use on Linux or Windows. ```bash ./repo.sh template list ``` ```powershell .\repo.bat template list ``` -------------------------------- ### Launch Streaming Kit Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Launch the Kit application with streaming enabled on Linux. Use the `--no-window` flag to run without the main application window, which is recommended for local streaming to prevent conflicts. ```bash ./repo.sh launch -- --no-window ``` -------------------------------- ### Launch Packaged Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Execute a previously packaged application. This command is not supported when packaging with the --thin flag. ```bash ./repo.sh launch --package ``` ```powershell .\repo.bat launch --package ``` -------------------------------- ### Create New Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Use the provided script to create a new Omniverse application based on the USD Viewer template. This command requires specific extension configurations. ```bash ./repo.sh template new ``` -------------------------------- ### Launch Streaming Kit Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Launch the Kit application with streaming enabled on Windows. Use the `--no-window` flag to run without the main application window, which is recommended for local streaming to prevent conflicts. ```powershell .\repo.bat launch -- --no-window ``` -------------------------------- ### Launch Packaged Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Launch an application that has been packaged using the 'package' command on Linux. Provide the full path to the package. ```bash ./repo.sh launch --package ``` -------------------------------- ### Package as Container Image Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Build a container image for the application. ```bash ./repo.sh package --container ``` -------------------------------- ### Package Container Image (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Initiates the containerization process for an application on Linux. ```bash ./repo.sh package_container ``` -------------------------------- ### Build Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Build your application using the provided build scripts. This command builds all applications in the 'source' directory. For active development, it's recommended to build only the application you are working on. ```bash ./repo.sh build ``` ```powershell .\repo.bat build ``` -------------------------------- ### Specify Kit Application for Containerization Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Use the --app flag to define the specific .kit file to be used within the container entry point. ```bash ./repo.sh package_container --app ${path_to_kit_file} ``` ```powershell .\repo.bat package_container --app ${path_to_kit_file} ``` -------------------------------- ### Create a New Custom Extension Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Initiate the creation of a new custom extension using the template tooling. Follow the interactive prompts to define the extension's properties. ```bash ./repo.sh template new ``` ```powershell .\repo.bat template new ``` -------------------------------- ### Rebuild Project from Scratch Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Rebuilds the project from scratch. Use with the build command. ```bash ./repo.sh build x ``` ```bash ./repo.sh build --rebuild ``` -------------------------------- ### Launch Packaged Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Launches a packaged application from a specified zip file path on Linux. ```bash ./repo.sh launch -p ``` -------------------------------- ### Test Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Use this command on Linux to run the test suite for your application and its extensions. A successful build is required before testing. ```bash ./repo.sh test ``` -------------------------------- ### Clone Repository Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Clone the kit-app-template repository to your local machine. This is the first step to setting up your development environment. ```bash git clone https://github.com/NVIDIA-Omniverse/kit-app-template.git cd kit-app-template ``` -------------------------------- ### Launch Application with Developer Bundle Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/developer_bundle_extensions.md Use the --dev-bundle flag to temporarily enable developer tools during application launch. ```bash ./repo.sh launch --dev-bundle ``` ```powershell .\repo.bat launch --dev-bundle ``` -------------------------------- ### Launch Application with Auto-Load USD (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Launch the USD Viewer application and automatically load a specified USD asset on startup. This is useful for quickly viewing content. ```bash ./repo.sh launch -- --/app/auto_load_usd='${omni.usd_viewer.samples}/samples_data/stage01.usd' ``` -------------------------------- ### Package Application as a Container Image Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Create a container image of your application for deployment in containerized environments. This requires Docker and NVIDIA Container Toolkit. ```bash ./repo.sh package --container ``` ```bash ./repo.sh package --container --name [container_image_name] ``` -------------------------------- ### Launch Application with Developer Bundle (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Launches an application on Linux, enabling the developer bundle with the -d flag if it was excluded from the .kit file definition. ```bash ./repo.sh launch -d ``` -------------------------------- ### Package application as a container Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/dgxc_nvcf_deployment.md Command to build and package the application into a container image for deployment. ```bash ./repo.sh package_container --image-tag myapp:v1.0 ``` -------------------------------- ### Launch Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Run this command on Linux to launch your built application. You will be prompted to select which application to launch. ```bash ./repo.sh launch ``` -------------------------------- ### Package Application as Container Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Basic command to initiate the container packaging process for Linux and Windows environments. ```bash ./repo.sh package_container ``` ```powershell .\repo.bat package_container ``` -------------------------------- ### Launch Containerized Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Run a containerized application using the launch command. ```bash ./repo.sh launch --container ``` -------------------------------- ### Enable Windows C++ Build Process Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/windows_developer_configuration.md Set the platform flag in repo.toml to enable the Windows x86_64 build process. ```toml [repo_build.build] "platform:windows-x86_64".enabled = true ``` -------------------------------- ### Navigate to Cloned Directory Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/README.md Change your current directory to the newly cloned kit-app-template repository. This is necessary before running subsequent commands. ```bash cd kit-app-template ``` -------------------------------- ### Generate Playback File for Template New Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Records the configuration choices made during 'template new' for later replay. Use on Linux or Windows. ```bash ./repo.sh template new --generate-playback {playback_file_name}.toml ``` ```powershell .\repo.bat template new --generate-playback {playback_file_name}.toml ``` -------------------------------- ### Configure Testing with Application Window Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/README.md Add this configuration to your `repo.toml` file to run tests with the application window open and enable test coverage reporting. ```toml [repo_test.suites."alltests"] args = [ "--/exts/omni.kit.test/pyCoverageEnabled=1", # Enable test coverage in report "--", # every parameter after will be passed directly to each extension tests as parameters ] ``` -------------------------------- ### Launch Packaged Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Launch an application that has been packaged using the 'package' command on Windows. Provide the full path to the package. ```powershell .\repo.bat launch --package ``` -------------------------------- ### Define Application in Premake5.lua Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Manually adds an application definition to the premake5.lua build configuration file. ```lua define_app("my_company.my_app.kit") ``` -------------------------------- ### Package as Container Image with Custom Name Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Build a container image with a specific name. ```bash ./repo.sh package --container --name [container_image_name] ``` -------------------------------- ### Package Container Image (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Initiates the containerization process for an application on Windows. ```powershell .\repo.bat package_container ``` -------------------------------- ### Launch Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Launch your created Omniverse application using the provided script. You will be prompted to select which application to launch. ```bash ./repo.sh launch ``` -------------------------------- ### Create Thin Package (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Creates a thin package containing only custom extensions and required registry extensions on Linux. ```bash ./repo.sh package --thin ``` -------------------------------- ### Package Application Container (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_streaming_config.md Containerize your application for streaming from a Linux environment using the 'package_container' command. Ensure you select the correct streaming .kit file when prompted. ```bash ./repo.sh package_container --image-tag [container_image_name:container_image_tag] ``` -------------------------------- ### Add Application Layers Prompt Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_streaming_config.md When creating a new application, you will be prompted to add application layers. Answer 'yes' to enable streaming. ```bash Do you want to add application layers? ``` -------------------------------- ### Build Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Build all applications within the 'source' directory using the provided script. For active development, it's recommended to build only the specific application being worked on. ```bash ./repo.sh build ``` -------------------------------- ### Package Application (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Create a deployable package for your application using this command on Linux. The package name defaults to 'kit-app-template' but can be customized. ```bash ./repo.sh package ``` -------------------------------- ### Add App Path to Repo.toml Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Manually adds an application's path to the repo_precache_exts.apps list in repo.toml. ```toml [repo_precache_exts] apps = ["${root}/source/apps/my_company.my_app.kit"] ``` -------------------------------- ### Create New Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Use the provided batch script to create a new Omniverse application based on the USD Viewer template. This command requires specific extension configurations. ```powershell .\repo.bat template new ``` -------------------------------- ### Package Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Create a deployable package for your application using this command on Windows. The package name defaults to 'kit-app-template' but can be customized. ```powershell .\repo.bat package ``` -------------------------------- ### Package Application for Deployment Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Create a distributable package of your application. The package name defaults to 'kit-app-template' but can be customized. ```bash ./repo.sh package ``` ```powershell .\repo.bat package ``` ```bash ./repo.sh package --name ``` ```powershell .\repo.bat package --name ``` -------------------------------- ### Select Streaming Layers Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_streaming_config.md After enabling application layers, you can select from available streaming layer options. Use space to toggle and enter to confirm. ```bash ? Do you want to add application layers? Yes ? Browse layers with arrow keys ↑↓: [SPACE to toggle selection, ENTER to confirm selection(s)] ❯ [ ] [omni_default_streaming]: Omniverse Kit App Streaming (Default) [ ] [nvcf_streaming]: NVCF Streaming ``` -------------------------------- ### Launch Application with Auto-Load USD (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Launch the USD Viewer application and automatically load a specified USD asset on startup. This is useful for quickly viewing content. ```powershell .\repo.bat launch -- --/app/auto_load_usd='${omni.usd_viewer.samples}/samples_data/stage01.usd' ``` -------------------------------- ### Launch Packaged Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Launches a packaged application from a specified zip file path on Windows. ```powershell .\repo.bat launch -p ``` -------------------------------- ### Launch Application with Developer Bundle (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Launches an application on Windows, enabling the developer bundle with the --dev-bundle flag if it was excluded from the .kit file definition. ```powershell .\repo.bat launch --dev-bundle ``` -------------------------------- ### Replay Template Configuration Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Replays a previously recorded template configuration. Use on Linux or Windows. ```bash ./repo.sh template replay {playback_file_name}.toml ``` ```powershell .\repo.bat template replay {playback_file_name}.toml ``` -------------------------------- ### Test Application Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Test applications and their extensions using the 'repo test' tooling. A successful build is required before testing. Testing is only run on applications and extensions within the build directory. ```bash ./repo.sh test ``` ```powershell .\repo.bat test ``` -------------------------------- ### Create Thin Package (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Creates a thin package containing only custom extensions and required registry extensions on Windows. ```powershell .\repo.bat package --thin ``` -------------------------------- ### Package Application with Custom Name Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_service/README.md Create a distributable package while specifying a custom name. ```bash ./repo.sh package --name ``` ```powershell .\repo.bat package --name ``` -------------------------------- ### Enable Host Toolchain Linking Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/windows_developer_configuration.md Configure the MSBuild settings to link the host toolchain. ```toml [repo_build.msbuild] link_host_toolchain = true ``` -------------------------------- ### Run Application Tests Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Execute the default test suite for applications and extensions. A successful build is required prior to running tests. ```bash ./repo.sh test ``` ```powershell .\repo.bat test ``` -------------------------------- ### Build Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Execute this command in PowerShell on Windows to build all applications within the 'source' directory. It's recommended to build only the actively developed application outside of initial experimentation. ```powershell .\repo.bat build ``` -------------------------------- ### Build Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Build all applications within the 'source' directory using the provided batch script. For active development, it's recommended to build only the specific application being worked on. ```powershell .\repo.bat build ``` -------------------------------- ### Create New Extension (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/extensions/basic_python_binding/README.md Use the provided shell script to create a new extension on Linux systems. ```bash ./repo.sh template new ``` -------------------------------- ### Launch Containerized Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Launches a containerized application on Windows. ```powershell .\repo.bat launch --container ``` -------------------------------- ### Generate Container Template Files Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Use the -g or --generate flag to create default container template files in the specified destination folder. ```bash ./repo.sh package_container -g ``` ```powershell .\repo.bat package_container -g ``` -------------------------------- ### Add Extension Dependency Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/extensions/basic_cpp/README.md Declare the extension in the application's .kit file to include it as a dependency. ```toml [dependencies] "my_company.my_extension" = {} ``` -------------------------------- ### Test Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Use this command in PowerShell on Windows to run the test suite for your application and its extensions. A successful build is required before testing. ```powershell .\repo.bat test ``` -------------------------------- ### Add Extension to .kit File Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Make an extension a persistent part of an application by adding its name to the dependencies section of the .kit file. ```toml [dependencies] "extension.name" = {} ``` -------------------------------- ### Configure streaming layer UI settings Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/dgxc_nvcf_deployment.md Settings to hide local file system access in the file picker and content browser for cloud-deployed applications. ```toml [settings.exts."omni.kit.window.filepicker"] show_only_collections.6 = "" # Hides the "My Computer" connection from the file picker. [settings.exts."omni.kit.window.content_browser"] show_only_collections.6 = "" # Hides the "My Computer" connection from the content browser. ``` -------------------------------- ### Launch Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/usd_viewer/README.md Launch your created Omniverse application using the provided batch script. You will be prompted to select which application to launch. ```powershell .\repo.bat launch ``` -------------------------------- ### Launch Application (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md Run this command in PowerShell on Windows to launch your built application. You will be prompted to select which application to launch. ```powershell .\repo.bat launch ``` -------------------------------- ### Modify Existing Application with Template Layers Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Adds Application Template Layers to an existing application. Use on Linux or Windows. ```bash ./repo.sh template modify ``` ```powershell .\repo.bat template modify ``` -------------------------------- ### Create New Extension (Windows) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/extensions/basic_python_binding/README.md Use the provided batch script to create a new extension on Windows systems. ```powershell .\repo.bat template new ``` -------------------------------- ### Clean Build Directory Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Cleans the build directory before building. Use with the build command. ```bash ./repo.sh build -c ``` ```bash ./repo.sh build --clean ``` -------------------------------- ### Add Extension Dependency to .kit File Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/templates/apps/kit_base_editor/README.md To make an extension a persistent part of an application, add its name to the [dependencies] section of the .kit file. ```toml [dependencies] "extension.name" = {} ``` -------------------------------- ### Package Application with Name (Linux) Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/kit_app_template_tooling_guide.md Specifies a custom package name during the packaging process on Linux. ```bash ./repo.sh package -n ``` -------------------------------- ### Define NVCF streaming layer dependencies Source: https://github.com/nvidia-omniverse/kit-app-template/blob/main/readme-assets/additional-docs/dgxc_nvcf_deployment.md Configuration for the .kit file to include necessary streaming, caching, and cloud connectivity extensions. ```toml [dependencies] "your_company.your_app" = {} # Your base application "omni.services.livestream.session" = {} # NVCF streaming (brings in `omni.kit.livestream.webrtc` and other streaming dependencies) "omni.ujitso.client" = {} # Geometry caching for faster load times "omni.cloud.open_stage" = {} # Nucleus server connection support ```