-> SIMPLE <- Deferred Lighting Example
Here is a port of Evolved's very first Deferred Lighting shader. It only handles PointLights, and is very very basic compared to his later set of deferred functions, but, it demonstrates the ACTUAL Deferred Technique, without all of the extra complexities of extra effects being used at the same time.
I am still working on porting over the latest version of Evolved's Deferred Lighting lib, but the DarkShader Dynamic Cubemap bug in GDK is making things difficult.
In his latest version, all of the shadows(depth) are done using the dynamic cubemaps, and a bunch of the other effects rely on those cubemaps themselves to look correct.... so its kind of like a jigsaw with some of the pieces just not fitting in.
I have worked around the majority of the darkshader GDK flaws, such as the lack of object masking and shader vector arrays, but the Dynamic Cube maps have got me a little stuck. I know I can emulate the actual dynamic cube map using directX manually and just manually rendering it and applying it, but I havent implemented a solution for that yet, and I have a feeling that it will be fairly inefficient if I do, possible causing a bottleneck in the rendering phase(im a bit of a DX noob still lol, big learning curve to get dynamic cube mapping done and working with GDK properly.... I have no doubt I will get it done, but I have no timeframe as the moment im sorry.
Im actually considering implementing a few different shading "extras" into this simple demo, just to see how it will look with some simple depth shadows and maybe some post processing bloom, and some water/terrain, though of course, I will be steering away from the DarkShader stuff as much as I can(at least until it's fixed, if its ever fixed, it's been broken since I started using GDK lol)
Anway, here are the screenies of the simple pointlight deferred lighting demo :
Final Scene Render :
World Normals Pass :
Light Render Pass :
The attachment contains the usual compiled EXE(using GDK 7.4 and march09 DXSDK), the Source code and all of the media/shader files.
If anybody has any ideas for improving this or anything else in this thread, or just wants to make a request or comment, please feel free
If it ain't broke.... DONT FIX IT !!!