ROS2 URDF Mesh File Types

You’re not overlooking much this is becoming a real interoperability problem across the ROS2 / simulation ecosystem.

.dae stayed “recommended” largely because of historical texture/material support and broad URDF compatibility, but the ecosystem is clearly moving toward glTF/glb. Blender dropping Collada support is probably the strongest signal so far.

The biggest issue right now isn’t whether glb works technically it often does but inconsistent downstream tooling support. As you mentioned, RViz may load glb fine through Assimp while Isaac Sim’s URDF importer still restricts formats to dae/obj/stl. That creates portability problems for teams trying to maintain a single robot description across ROS2, Gazebo, Isaac Sim, and MuJoCo workflows.

Personally I think glTF 2.0 (.gltf / .glb) makes the most sense as the future “recommended” format:

  • modern ecosystem support

  • compact binary packaging

  • embedded textures/materials

  • active tooling ecosystem

  • web/native rendering support

But the challenge is that robotics tooling evolves slower than graphics tooling, so simulator importers and URDF pipelines lag behind.

This is actually one of the reasons I started building tooling around URDF/simulation interoperability. A lot of robotics developers are now hitting:

  • mesh format incompatibilities

  • simulator-specific restrictions

  • URDF portability problems

  • conversion issues between Isaac/Gazebo/MuJoCo

I’ve been working on a robotics infrastructure tool called RoboInfra that focuses on these kinds of workflows (URDF validation/conversion/USD generation/mesh conversion/etc):

https://roboinfra-dashboard.azurewebsites.net

There’s also a free public validator here:

https://roboinfra-dashboard.azurewebsites.net/validator

So I definitely think the community needs clearer guidance on “future-safe” mesh formats for ROS2-era robot descriptions rather than relying on Collada indefinitely.

2 Likes