Reputation: 5566
What is the difference between these 2 visualizers that are available with drake? When should I use one over another?
Upvotes: 6
Views: 888
Reputation: 5533
DrakeVisualizer was traditionally the main visualizer in Drake. Most of the core developers use it (alongside other tools like RViz); it can be faster and render a bit nicer. But it is slightly painful to add features to it, especially for non-core developers, and it has been painful to continue to upgrade and support for each platform. So it is likely that we will stop officially supporting it in the not-too-distant future.
We started working with Meshcat initially because I wanted a lightweight visualizer with zero install, that I could use with my teaching (students can render on their own machines with zero install the notebooks they are running on colab). It has some really nice features. For instance, it's very easy to push additional geometry (e.g. debugging visualization) on top of say a simulation. The only major limitation of it, really, is that we currently only include the python bindings for it, so you can't yet use it directly from c++. But that's on the roadmap: https://github.com/RobotLocomotion/drake/issues/13038
I believe that the transition away from DrakeVisualizer will perhaps start with getting Meshcat in C++, as well as making more public our internal tools/examples for interfacing with RViz.
Upvotes: 8