urdf-usd-converter
A URDF to OpenUSD Data Converter
What it is and what it does
urdf-usd-converter translates URDF (Unified Robot Description Format) files into OpenUSD (Universal Scene Description) assets, enabling robot models to be used in modern 3D graphics and simulation ecosystems. It reads URDF XML definitions—which specify robot structure, geometry, materials, and physics properties—and outputs a self-contained USD layer that can be loaded into any OpenUSD-compatible application or physics engine.
The converter handles mesh geometry parsing via tinyobjloader, pycollada, and numpy-stl, supports ROS package path resolution, and structures output as an Atomic Component suitable for visualization in tools like usdview or simulation in Newton physics. It is available both as a Python module for programmatic use and as a command-line tool, making it useful for batch conversions or integration into larger pipelines.
Use it for:
- Convert robot URDF models from ROS projects into USD format for visualization in NVIDIA Omniverse or other USD viewers.
- Prepare robot assets for physics simulation in Newton by converting URDF definitions with collision geometry and joint constraints.
- Batch-convert a library of robot descriptions from URDF to USD for use in graphics or simulation applications.
- Integrate URDF-to-USD conversion into a Python pipeline to programmatically transform and further modify robot assets.
- Export robot geometry and materials from URDF into a standalone USD artifact for sharing or archival without source file dependencies.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Converts URDF robot description files into OpenUSD format, preserving visual geometry, materials, collision data, and joint definitions for use in USD-compatible applications and physics simulators.
Yes, if you need to convert URDF robot models to OpenUSD format for visualization or physics simulation. The package is actively maintained, has no known vulnerabilities, and low install friction. However, it is currently Alpha software, so expect potential API changes and verify that its feature set covers your specific URDF complexity before committing to production workflows.
Install
urdf-usd-converter on PyPI
pip
pip install urdf-usd-converteruv
uv add urdf-usd-converterpoetry
poetry add urdf-usd-converterInstalling urdf-usd-converter
Before you install
Low install friction with a pure-Python wheel and five runtime dependencies. The package is actively maintained with a recent release (7 days old) and no known vulnerabilities. However, it is marked as Alpha, so stability and API changes should be expected.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions. You must include a copy of the license and note any modifications, but there are no copyleft obligations.
Quickstart
pip install urdf-usd-converter
urdf_usd_converter /path/to/robot.urdf /path/to/output_usd
# Or via Python:
import urdf_usd_converter
converter = urdf_usd_converter.Converter()
asset = converter.convert("/path/to/robot.urdf", "/path/to/output_usd")
Requires Python 3.10 or later (capped below 3.13). ROS package references in URDF files may require manual path specification via --package CLI argument or ros_packages parameter.
Verify before relying
- Whether the Alpha status implies breaking API changes are likely in near-term releases.
- Performance characteristics and scalability limits for large or complex URDF models.
- Completeness of URDF feature support beyond visual geometry, materials, and basic collision/joint data.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | capped below the current Python release (<3.13,>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — newton-usd-schemas, numpy-stl, pycollada, tinyobjloader, usd-exchange |
| Maintenance | actively maintained — 7 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 80,134/month — #14,318 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: urdf_usd_converter-0.3.3-py3-none-any.whl
Tags
More Scientific/Engineering packages
NumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
pandaspandas provides fast, flexible data structures…
permissive · top 100 on PyPI
scipyscipy provides numerical algorithms for…
permissive · top 100 on PyPI
scikit-learnscikit-learn provides a comprehensive Python…
permissive · top 1,000 on PyPI
dilldill extends Python's pickle module to…
permissive · top 1,000 on PyPI
multiprocessMultiprocess is an enhanced fork of Python's…
permissive · top 1,000 on PyPI
cmeel-urdfdomParses URDF (U-Robot Description Format) XML…
permissive · top 5,000 on PyPI
mujoco-usd-converterConverts MuJoCo MJCF robot model files into…
permissive · top 15,000 on PyPI
resolve-robotics-uri-pyResolves ROS-style package:// and Gazebo-style…
permissive · top 15,000 on PyPI
usd-coreProvides Pixar's Universal Scene Description…
unclear · top 5,000 on PyPI
usd-exchangeProvides higher-level convenience functions and…
permissive · top 15,000 on PyPI
newton-usd-schemasRegisters OpenUSD schema extensions for the…
permissive · top 15,000 on PyPI
yourdfpyLoads, manipulates, validates, and visualizes…
permissive · top 5,000 on PyPI
CurrencyConverterConverts currency amounts using historical…
unclear · top 15,000 on PyPI
xmacroxmacro is a command-line and Python tool for…
permissive · top 15,000 on PyPI
robot_descriptionsDownloads and caches open-source robot…
permissive · top 15,000 on PyPI