This project is read-only.

Framework

May 30, 2012 at 2:37 PM

This is a discussion to remind me to get the framework design solidified. There are some outstanding changes that need to occur before the framework can be thought of as 'ready for use'.

Some of the main portions that need sorting:

Geom -> Entity -> RenderLayer->Output target/s

                               ^         

                          Camera/s  

How the RenderLayer is constructed - Material + ShaderObj + Camera refs + output Texture refs. Inputs can also be outputs of other RenderLayers (this is how the deferred passes will be combined).

Camera/s need to Frustum cull Entities Geometry as well. Output targets may also need to be associated with a display/view/output system. So RenderLayers are going to be important. They will also manage alpha/non alpha render ordering (bucketing) and will have masks that allow objects to match to a specific RenderLayer option. Ie if an Object needs only to be alpha render and not opacity rendered this should be maskable.

Looking at the Open Steer system, this will involve more of the Camera<->Entity relationship. Where objects can dynamically move around and interact and controllers/behaviors can be applied but this is maintained as a referential system outside of the rendering. It is possible the camera may use the OpenSteer LQ to do a coarse frustum cull before submitting objects to the RenderSystem (this seems sensible).