.urdf → .xml
URDF to MJCF
Convert a robot description from URDF to MJCF 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 URDF here
Drop the folder too if the model references meshes.
Files are read on our server and deleted after a day. Nothing is published.
Reading the URDF
Writing the MJCF
Look at the file first
What this conversion costs
These are the things MJCF 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.
- Joint velocity limits. MJCF does not keep a velocity limit on the joint — MuJoCo enforces speed through actuators, so the number moves there or disappears.
- Named materials. Colours survive; the material name a URDF shares between links does not.
A URDF has no ground and no gravity
It describes one robot, floating. The MJCF we write adds a floor, a light and a free base for anything with legs, because a legged robot bolted in mid-air is not a simulation of anything.
Meshes are referenced, not embedded
MuJoCo wants its meshes in a directory it can find. The file we hand back points at meshes/, so keep the folder next to it.
Collision geometry is what gets simulated
If a link has visual geometry only, MuJoCo has nothing to collide with there. The check on the viewer page lists those links before you find out the hard way.
The two formats
- URDF .urdf
- the ROS description of a robot: links, joints, geometry and inertia, one rigid tree.
- MJCF .xml
- MuJoCo's own format: the same robot, plus everything a solver needs to simulate it.
Converting is rarely the whole job. Once you have the MJCF, 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.