Build terrain renderer directly into the tool, instead of making it an extension. This will allow us to remove the hacky extension system altogether.
A terrain renderer has multiple layers that are drawn in sequence. The first one determines the transform – not sure if that is elegant, maybe we should just always initialize the camera above the point cloud bbox center?
We need to know where the camera is in order to center the terrain window below it, hence the need for get_camera_to_world().
get_camera_to_world()
.