urdf-usd-converter
A URDF to OpenUSD Data Converter
Decision gist · record as of 2026-08-14
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.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- 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.
- Low install friction with a pure-Python wheel and five runtime dependencies.
License · maintenance · safety
Apache-2.0 (permissive) — 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.
last release 2026-08-07 (7 days) · last repo commit 2026-08-07 · 66 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 80,134 downloads/mo, #14,318 on PyPI
Alternatives
Verify before relying
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")- 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.
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 on it.
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
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.
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.
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")
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 packagesnewton-usd-schemasnumpy-stlpycolladatinyobjloaderusd-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
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “urdf to usd conversion”
- urdf-usd-converterConverts URDF robot description files into OpenUSD format, preserving…
- mujoco-usd-converterConverts MuJoCo MJCF robot model files into OpenUSD layers for…
- usd-exchangeProvides higher-level convenience functions and tools for designing,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also cmeel-urdfdom · mujoco-usd-converter · resolve-robotics-uri-py · usd-core · usd-exchange · newton-usd-schemas · yourdfpy · CurrencyConverter · xmacro · robot_descriptions