usd-validation-nvidia is a repository for NVIDIA OpenUSD asset validation and
profile tooling. It contains an extensible validation engine, a command line
validator, and the profile/specification utilities used to describe OpenUSD
capabilities, features, and requirements.
The repository publishes two Python packages from the same commit, both
versioned from the shared VERSION.md:
usd-validation-nvidia: A standalone validation framework for OpenUSD assets, including thenvidia_usd_validateCLI, built-in rule registries, JSON/CSV reporting, and automatic issue fixing.usd-profiles-nvidia: Tooling for authoring profile specifications in Markdown, generating Python code, and integrating profile documentation with Sphinx.
validation/: Validation package source, documentation, examples, and tests.profiles/: Profile/specification package source and code generation tools.specs/: Authored Markdown specifications for capabilities, features, and requirements used by the validation package..agents/skills/: Task-oriented guidance for AI coding agents working in this repository.AGENTS.md: Repository-level guidance for AI coding agents.
Install the released validation engine:
pip install usd-validation-nvidiaInstall the released profile tooling:
pip install usd-profiles-nvidiaOptional extras are available for OpenUSD, NumPy, and Sphinx integrations. See the package READMEs for details:
Generate the validation capabilities package from the in-repository profile tooling, then build all packages:
uv run \
--no-project \
--with ./profiles \
python -m usd_profiles_nvidia.codegen \
--docs-root specs \
--destination-dir validation/src \
--package-name usd_validation_nvidia.capabilities \
--reverse-domain com.nvidia.usd
uv build --all-packages -o distuv build --all-packages produces wheels and source distributions for both
usd-validation-nvidia and usd-profiles-nvidia.
After installing the validation package, run the CLI against a USD asset:
nvidia_usd_validate path/to/asset.usdaThe validation engine can also be used from Python:
from usd_validation_nvidia import ValidationEngine
engine = ValidationEngine()
results = engine.validate("path/to/asset.usda")
for issue in results.issues():
print(f"{issue.severity}: {issue.message}")- Full Documentation
- Validation API Reference
- Available Validation Rules
- Validation Requirements
- Profile Authoring
- Python 3.10 - 3.12 for validation workflows (
usd-validation-nvidiadoes not yet support Python 3.13+) - OpenUSD 22.11 or later for validation workflows
Apache-2.0 AND CC-BY-4.0