Projects I was in need of a framework in order to play around with high dynamic range rendering in outdoor scenes for my thesis. Based on the things i learned from the stokedrider engine and prior attempts to create a 3d engine i built a new, clean, framework.
Features
Renderer The renderer is a separate subsystem decoupled from the scenegraph. It features a shader system which is easily extensible. Allows rendering to arbitrary targetrs (screen, texture, renderbuffer) and supports batching by shader and geometry. The low-level access is abstracted and hides gl or directx. Currently only a OpenGL 2.1 backend is implemented.
Scenegraph After spending alot of time getting a componentbase scenegraph working i went back to a traditional one were new node types are built by inheritance instead of composition. Operations on the graph are encapsulated in visitors to allow easy extensions. Nodes expose properties for easy editing support.
Core The frameworks core relies heavily on c++ templates and provides the base for module registration, queries, maths, serialization, property system, smart ptrs and lot of other things.
Work in progress
Terrain Terrain renderer is based on geometry- and texture clipmaps for efficient rendering of vast landscapes.
Editor The scene editor is built around the property and serialization feature of the framework. Currently only a proof of concept for basic scene assembly. Transformation gizmos allow intuitive positioning and alignment of objects.