Extension: omni.kit.stage_templates-2.0.1

Documentation Generated: Aug 12, 2025

Overview#

omni.kit.stage_templates enables custom stage template management for the Omniverse Kit USD workflow. The extension allows users to register, unregister, and select from a variety of stage templates when creating new stages. With support for both built-in and user-defined templates, it streamlines stage initialization by providing synchronous, callback-based, and asynchronous creation options.

Concepts#

  • Custom Templates: Define preset stage configurations that tailor how a new USD stage is created.

  • Callback & Async Operations: Functions are provided to execute stage creation with optional callbacks and asynchronous behavior.

  • User Templates: In addition to built-in templates, user-defined templates are loaded from configurable file system paths.

Functionality#

Configuration#

  • The default new stage template is specified in settings (e.g., persistent.app.newStage.defaultTemplate is set to “sunlight”).

  • Templates are loaded from paths defined in persistent.app.newStage.templatePath.

  • Stage-specific parameters like time code range (persistent.app.stage.timeCodeRange) help standardize stage initialization.

Relationships#

  • Dependencies: This extension builds on omni.kit.stage_template.core, omni.kit.commands, omni.usd, omni.kit.actions.core, and omni.kit.primitive.mesh.

  • It integrates into the Omniverse Kit USD workflow, ensuring that both built-in and user-defined templates contribute to a consistent stage creation process.

Considerations#

  • Ensure that the template path directories are accessible and contain valid template scripts.

  • When unregistering templates, rebuilding the stage template menu is necessary to keep the UI consistent.

  • The extension expects a synchronous initialization of templates at startup while offering asynchronous options for non-blocking stage creation workflows.