ovstage data-adapter package boundary.
Project description
NVIDIA ovui-data-adapters-ovstage
1. What is ovui-data-adapters-ovstage?
ovui-data-adapters-ovstage is the native OVStage provider of ovui-data-adapters, the backend boundary of the ovui scene-tooling family — NVIDIA's standalone distribution of the Omniverse omni.ui UI framework. It connects ovui-widgets applications directly to the externally supplied native OVStage scene runtime and attaches the ovrtx renderer in BORROW mode for rendering and picking.
The provider is natively isolated: it has no OpenUSD dependency, does not import pxr or the ovui-data-adapters-openusd package, and does not open or mirror a backing Usd.Stage. Structural and runtime isolation tests enforce that boundary. Compatibility with the native runtime is verified at startup by a runtime preflight that names the exact missing module or API when a requirement fails.
ovui is pre-release software and is not enterprise-supported.
2. What functionalities are available, and who are the target users?
What you can do with it:
- Drive the widgets from native OVStage — stage, property, transform, selection, and renderer adapters behind the common contracts, registered as the
ovstageprovider. Prim creation and deletion, property and transform authoring, rendering, picking, and undo/redo are supported natively. - Manage native scene lifetime — a provider-owned session (
OvstageProviderSession) handles scene open/replace/cleanup, and authoring adapters integrate with the application's undo manager. - Know the capability boundary — durable workflows that need USD composition or default-value resolution are deliberately unavailable and fail closed rather than falling back: new-document creation, save/export, layer-stack and composition operations (edit targets, save/save-as, sublayer editing, mute/lock, prim specs), and clearing authored property values. Use the separate
ovui-data-adapters-openusdprovider for those workflows. - Render and pick through ovrtx — the renderer adapter attaches ovrtx in BORROW mode; the provider does not fall back to a substitute renderer.
- Control physics (optional) — guarded Physics menu items (Enable PhysX, Play Simulation) register whenever the ovui-widgets menu subsystem is importable; the session always exposes
physics_controls, the optionalovphysxruntime is imported lazily when physics is enabled, and a failed load or enable raises a structured error that is reported and re-raised.
Who benefits:
- Teams deploying the native OVStage runtime — run the ovui-widgets USD Viewer directly on OVStage-owned scenes without an OpenUSD layer in between.
- Application developers needing strict backend isolation — a provider whose no-
pxrcontract is enforced by tests, not convention.
Installation:
python -m pip install ovui-data-adapters-ovstage
Select the provider explicitly with OVUI_DATA_ADAPTER_PROVIDER=ovstage when running the ovui-widgets application. The native ovstage and ovrtx runtimes must be importable — from the active Python environment first, or resolved from OVSTAGE_ROOT / OVRTX_ROOT installs; they are supplied outside of pip and are not installed by this package.
3. Documentation and reference links
- Quickstart & install: https://github.com/NVIDIA-Omniverse/ovui#readme
- Data adapters guide: https://github.com/NVIDIA-Omniverse/ovui/blob/main/ovui-data-adapters/README.md
- Architecture overview: https://github.com/NVIDIA-Omniverse/ovui/tree/main/docs
- Core toolkit (PyPI): https://pypi.org/project/ovui/
- Source (GitHub): https://github.com/NVIDIA-Omniverse/ovui
- Support: Issues
4. System requirements
- Python 3.10+
- Declared dependency:
ovui-data-adapters-common>=0.1.0— deliberately noovui-data-adapters-openusd,usd-core, orpxrdependency - External native runtimes, supplied outside of pip: ovstage (required; exposes a callable
ovstage.Stage), ovrtx (required for rendering and picking), ovphysx (optional; loaded lazily for physics) - Required ovrtx renderer APIs, verified by the startup preflight: a callable
ovrtx.RendererConfigand a callableovrtx.Rendererexposingovrtx.Renderer.attach_ovstage,ovrtx.Renderer.step, andovrtx.Renderer.detach_ovstage - BORROW attachment is the supported mode: the current default-BORROW ovrtx API needs no
AttachModetype; when an ovrtx build exposesovrtx.AttachMode.BORROW, the provider passes that explicit mode toovrtx.RendererConfiginstead - The renderer requirement is fail-closed: the provider has no read-only compatibility mode and never substitutes a fallback renderer — setting
OVUI_WIDGETS_REQUIRE_OVRTX=0relaxes nothing when theovstageprovider is selected - NVIDIA RTX-capable GPU + compatible driver for ovrtx rendering
- Installing the wheel does not prove native-runtime compatibility; the provider's startup preflight verifies the required modules and APIs and fails with a structured error naming what is missing
5. Licensing
- Governed by the NVIDIA Software License Agreement and the Product Specific Terms for NVIDIA Omniverse.
- Source-available for inspection; pre-release versions are provided AS-IS and are not currently open to external contributions.
Note: ovui is pre-release Early Access software and is not enterprise-supported. APIs may change before the 1.0 release. OVStage, ovrtx, and ovphysx are external runtime components with their own availability and licensing.
ovui-data-adapters-ovstage · native OVStage backend for the ovui scene-tooling family · Copyright (c) 2025 NVIDIA Corporation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ovui_data_adapters_ovstage-0.2.0-py3-none-any.whl.
File metadata
- Download URL: ovui_data_adapters_ovstage-0.2.0-py3-none-any.whl
- Upload date:
- Size: 208.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1cfa361755fbfc8e2e2bb41523cd8fc23efabbfca5cb75ce65c0d08da78c5b9
|
|
| MD5 |
7d35fb89e1b102c52c1c728c222c49f3
|
|
| BLAKE2b-256 |
41bc447f02e947b8d637533381745228ff747994fea0a2c37b9261fc8a3597de
|