Skip to main content

physx-usd-schemas

Codeless PhysX USD schemas for authoring and validation with a stock OpenUSD runtime.

This package ships two USD schema modules as pure-Python subpackages (no compiled C++ bindings):

  • physx_usd_schemas.PhysxSchema -- PhysX simulation schemas (rigid body, collision, joints, vehicles, particles, ...)
  • physx_usd_schemas.OmniUsdPhysicsDeformableSchema -- Omni deformable-body simulation schemas
  • physx_usd_schemas.PhysicsSchemaTools -- Schema utility helpers (e.g. units_db)

Importing physx_usd_schemas registers all bundled schemas with any stock usd-core runtime, so you can author or validate physics-annotated USD files without the full Omniverse runtime.

This wheel supplies the NVIDIA physics schema extensions -- the Physx* API schemas and the OmniPhysics* deformable schemas. The official pxr.UsdPhysics core physics schemas come from usd-core (OpenUSD), which is why usd-core is required alongside this wheel.

Installation

pip install physx-usd-schemas usd-core

Usage

Register all schemas at once (recommended)

Importing physx_usd_schemas registers all bundled schemas automatically -- no explicit call is needed:

import physx_usd_schemas  # registers all schemas on import
from pxr import Usd

stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim("/World/Box", "Cube")
prim.ApplyAPI("PhysxRigidBodyAPI")
prim.ApplyAPI("PhysxCollisionAPI")
print(prim.GetAppliedSchemas())

physx_usd_schemas.register_all() is also available for explicit use and is safe to call again.

Register individual schemas

from physx_usd_schemas import PhysxSchema
from physx_usd_schemas import OmniUsdPhysicsDeformableSchema

PhysxSchema.register()
OmniUsdPhysicsDeformableSchema.register()

Use the pure-Python schema API

The schema modules expose a pure-Python API that mirrors the compiled bindings:

from pxr import Usd
import physx_usd_schemas  # registers all schemas on import
from physx_usd_schemas import PhysxSchema

stage = Usd.Stage.CreateInMemory()
prim = stage.DefinePrim("/World/Box", "Cube")
api = PhysxSchema.PhysxRigidBodyAPI.Apply(prim)
api.CreateLinearDampingAttr(0.1)

Discover schema resource paths

If you need the raw plugInfo.json directory paths for manual registration:

import physx_usd_schemas
from pxr import Plug

paths = physx_usd_schemas.schema_paths()
Plug.Registry().RegisterPlugins([str(p) for p in paths])

Release files for physx-usd-schemas 25.11.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for physx-usd-schemas 25.11.1
File Interpreter ABI Platform
physx_usd_schemas-25.11.1-py3-none-any.whl Python 3 none any Details

Release files / physx_usd_schemas-25.11.1-py3-none-any.whl

Download URL physx_usd_schemas-25.11.1-py3-none-any.whl
Size 79.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a00e4062b28f5a23cbacdfb9dcddb6f3cf59418f082e2df8f9c3d0359d88da37
BLAKE2b-256 checksum
How to use checksums
69d11ec944dcf81f806448bde3c3a538b79046b7dfd526059c9fdb2deff0619f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

25.11.1 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page