All of these functionalities are already implemented via `Camera` and `ITransformable` in the rendering engine.