Okay,
I thought it might time to provide you folks with an update on the progress of my voxel cone tracing (VCT) test engine done in OpenGl 4.3. Everything is 100% dynamic running at approximately 20fps on gtx485m @ 1024x768:
[attachment=18055:giboxv3-0.png][attachment=18056:giboxv3-1.png]
[attachment=18057:giboxv3-2.png][attachment=18058:giboxssr7.png][attachment=18059:giboxssr9.png]
The VCT itself (with "unlimited" bounces by temporal coherence) runs at around 50fps @ 1024x768.
The effects that slow this down to 20fps are:
- Screen space jittered soft shadows (all omnidirectional, with maximum 1 direct light and 3 emissive lights)
- Screen space reflections
- Screen space ambient occlusion (Arkano22's method)
The area is currently only limited to this scene (i'm using a single 64x64x64 3D texture), but I intend to have a go at this "camera-centred cascades" idea to see if I can get consistent interactive framerates for a much larger scene. The main concern I have with using cascades is that it involves dynamically shifting the volume texture, thus leading to large scale flickering. This flickering is evident when I move around emissive objects in my current implementation.
I also want to try optimizing this engine, firstly by trying to implement bindless graphics.
Here is a video of my latest engine:
[media]http:
You'll have to excuse the banding artifacts - the quality of the video makes them look worse than they actually are!
Link to part one, which details the journey I've been on since January: http://www.gamedev.net/topic/638933-voxel-cone-tracing-experiment-progress/