Currently, there is no good way of manually rendering a scene. Looking at ColorPicker as an example, one has to:
Retrieve visible objects
Retrieve camera matrices
Sort objects
Individually bind object uniforms
Individually call object render methods
This sort of routine should only have to happen within a Renderer implementation. So a method needs to be added (most likely to SceneManager) to manually call a render. The following options should be available:
Specify a camera (default all cameras)
Specify a material override (default no material override)
Renderer type (string, default to the active renderer)
Doing so will make certain effects much easier and uniform.
Example:
auto camera = OcularCameras->getMainCamera();
auto material = OcularResources->getResource<Material>("EffectA");
OcularScene->render(camera, material);
Currently, there is no good way of manually rendering a scene. Looking at
ColorPicker
as an example, one has to:This sort of routine should only have to happen within a
Renderer
implementation. So a method needs to be added (most likely toSceneManager
) to manually call a render. The following options should be available:Doing so will make certain effects much easier and uniform.
Example: