Extension: omni.rtx.window.settings-0.7.2

Documentation Generated: Nov 13, 2025

Overview#

omni.rtx.window.settings is a core extension designed to manage render settings for renderers leveraging the carbonite settings framework. It provides a dedicated settings window that enables users to view, adjust, and restore render configurations. In addition, it offers command classes to reset or update settings and to switch between renderers and their associated configuration stacks.

_images/preview.png

Concepts#

  • Render Settings Window: At the heart of this extension is the RTXSettingsWindow, which handles the display and lifecycle of the render settings UI. This window can be automatically created at startup, or deferred until the renderer outputs its first frame to ensure complete initialization.

  • Command-Driven Control: The extension provides a set of commands—like RestoreDefaultRenderSettingCommand, RestoreDefaultRenderSettingSectionCommand, SetCurrentRenderer, and SetCurrentStack—that implement a consistent pattern for updating renderer settings and managing state changes.

  • Renderer Registration: Through the RendererSettingsFactory and related APIs, other extensions can register new renderers and their configuration stacks, as well as dynamically switch or query the current renderer and stack.

Functionality#

  • Settings UI Management: The RTXSettingsWindow class manages the render settings window, offering methods to show or hide the window, register renderers and configuration stacks, and update rendered views based on current settings.

  • State Restoration and Updating: Commands provided by the extension allow users to restore default settings either for an individual setting or an entire section, and to update the current renderer or settings stack through simple command invocations.

  • Renderer Integration: The RendererSettingsFactory acts as an interface for registering renderers along with their available stacks. It also maintains the current renderer state and builds or updates the UI for these settings as needed.

Configuration#

Settings defined in the extension.toml help tailor the behavior of the settings window:

  • The window is integrated into the Rendering menu (using exts.”omni.rtx.window.settings”.window_menu).

  • The window can be auto-created at startup (autoCreateWindow set to true) and configured to wait until the first frame from the renderer is available (waitForHydra1stFrame set to true), preventing warnings or errors from incomplete settings.

Relationships#

  • Dependencies: This extension depends on core modules such as omni.kit.commands, omni.ui, omni.usd, and several widget-based extensions. These dependencies ensure integrated command processing, consistent UI behavior, and a coherent interaction with USD stage rendering.

  • Integration with the Settings Framework: Operating as part of the carbonite settings framework, the extension enables renderers to expose and adjust settings in a uniform manner across Omniverse Kit applications.

Considerations#

  • The auto-creation features and the wait-for-first-frame mechanism are designed to ensure that the settings window is only shown when complete renderer settings are available. Extensions relying on this framework should make sure that renderer settings are fully registered prior to the first frame update.

  • The command-based operations allow for straightforward undo/redo functionality, helping maintain consistency when changing render configurations in a live environment.

By focusing on a clear separation between UI management and command-driven state updates, omni.rtx.window.settings offers an effective and integrated way to control renderer configurations in Omniverse Kit applications.