Build a Project#

../../_images/build-apps-banner.png

Depending on the nature of your project, a ‘build step’ may be required as development progresses. Omniverse supports this step with a variety of scripts and tools that generate a representation of the final product, enabling subsequent testing, debugging, and packaging.

Build-less Projects#

Python-only extensions do not require a build step.

Your project might simply be an Extension within another Application, consisting of purely Python code. If that’s the case, you can bypass the build step for the time being. However, if the complexity of your project increases or you decide to create a tailored Application around your extension, introducing a build step into your development process might become necessary.

“Repo Build”#

The Repo Tool is your most likely method for building a Project. This tool operates on both Linux and Windows platforms, providing functionalities ranging from creating new extensions from a template to packaging your final build for distribution.

For access to the current list of available tools via Repo, you can use the following command in a terminal:

Note

Find more information about Repo Tools in the Repo Tools documentation.

repo -h

By Default, you can execute a build which compiles a release target by entering:

repo build

Other options include:

  • -r [default] will build only the release pipeline.

  • -d will build only the debug pipeline.

  • -c will delete all build files in the _build folder.

  • -x will cause a full rebuild of all files.

  • -u will update dependency versions in the .kit file.

After executing a repo build, a _build folder is generated, containing targets that you’ve selected to build.

Within this directory, you will find a script file which loads the .kit file that you created for your Project. Alternatively, if you created an Extension, a script file should be present to load the Application you added your Extension to.

Building Applications, Extensions, and Services#

To build your own Applications, Extensions, and Services, you can leverage the Kit App Template repository as a starting point. Detailed instructions and hands-on practical examples can be found in the Kit App Template Companion Tutorial.

Build with Kit App Template

Building USD Data Exchange Solutions#

USD Exchanges data as implementations of Importers, Exporters, Converters, or USD File Format Plug-ins.

The best way to get started with the OpenUSD Exchange SDK is to try out the OpenUSD Exchange Samples.

You can integrate the SDK and the samples to try them out in your application, learn from their source code, and modify them to experiment with OpenUSD and the OpenUSD Exchange SDK for yourself to make a standalone converter.

Build & Integrate with OpenUSD Exchange SDK

On the other hand, if you are developing a Connector with Nucleus and Live collaboration, you will want to integrate both the OpenUSD Exchange SDK and Connect SDK into your build system. The Connect SDK documentation provides a basic guide for integrating Connect SDK and building a Connector on multiple platforms.

Build a Connector