.xacro → .usda
Xacro to USD
Convert a robot description from Xacro to USD in the browser. Nothing is installed and nothing is queued: the file is read, written in the other format, and handed back with a list of anything that could not be carried across.
Convert a file
Drop your Xacro here
Include the files it pulls in — select them all at once, or drop the whole folder.
Files are read on our server and deleted after a day. Nothing is published.
Reading the Xacro
Writing the USD
Look at the file first
What this conversion costs
These are the things USD has no place for. They are reported on the converted file as well, as a comment at the top, so the file itself says what is missing from it.
- The macros themselves. Xacro is expanded first, so what reaches USD is the robot the macros produced — and a stage cannot be re-expanded with different parameters.
- Joint damping and friction, named materials and mimic joints, exactly as in the URDF direction.
Expanded, then converted
Xacro is not a robot format: it is a macro language that produces URDF. Properties, includes and macros are evaluated first, and everything after that is the URDF to USD conversion — so a parameterised leg written once and instantiated four times arrives as four legs.
The two formats
- Xacro .xacro
- URDF with macros, properties and includes — expanded before anything can read it.
- USD .usda
- NVIDIA's scene format, where a robot is ordinary geometry with UsdPhysics applied on top — what Isaac Sim opens.
Converting is rarely the whole job. Once you have the USD, the viewer shows what actually came across — collision geometry against visual, joint limits, where the mass sits — and the physics lab answers the question a file cannot: whether the robot stands up when gravity is switched on.