Discussion on Rviz rewrite

As @gavanderhoorn already linked to, this discussion happened on the ROS 1 rviz repository:

https://github.com/ros-visualization/rviz/issues/1125

That issue needs to be updated (it’s on my todo list), but since we were not planning on a “from scratch” rewrite of rviz, I decided to stick with Ogre, since none of the other options gave us much immediate benefit (from my perspective) and I estimated that it was a lot of work to replace Ogre.

What we did do during the port of rviz for ROS 2 (here: https://github.com/ros2/rviz) is we tried to abstract all calls to Ogre behind one rviz API or another, so that in the future we could hopefully replace Ogre with a newer version of Ogre or some other toolkit.

I say “tried” because there were some quite deep integrations with Ogre, especially in the selection tools and interactive markers, and also many of the third-party displays also use Ogre directly. So some things have been abstracted, but others were deemed too complicated to do for now. So if we wanted to remove Ogre, then we’d have to first finish those abstractions or rewrite the non-abstracted code in the new system.