Original Post
Hello, guys! After several years learning from this site I'm glad to give my own contribute to the community.
I'm here to present the work I've done for my master which is a rendering engine called Serenity that combines GPU lighting and ray traced lighting in order to approximate global illumination.
The main idea behind this work is that GPUs have become powerful enough to generate diffuse global illumination effects. However, sharp global illumination effects like reflections and refractions are still hard to generate using rasterization based techniques, in this case ray tracing is better suited.
Therefore, the engine combines the best of two worlds by using rasterization to generate direct lighting and indirect diffuse lighting, and ray tracing to generate reflections and refractions.
In particular, the engine generates direct lighting through phong illumination and soft shadow mapping generated with the Percentage-Closer Soft Shadows technique.
The indirect diffuse lighting is simulated by an implementation of the Light Propagation Volumes technique combined with a technique that I developed, called Sky Lighting Irradiance Volume, which simulates sky lighting and Screen Space Ambient Occlusion.
The ray traced reflections and refractions are generated by an hybrid real-time ray tracer that splits the rendering process between the CPU and the GPU to take advantage of their particular computing benefits (i.e. coherent vs inchoerent processing). All the ligthing is processed on the GPU, even for ray traced effects, by using Deferred Rendering to unify all the lighting. What the ray tracer does is generate G-buffers containing information about the reflected/refracted scene that are uploaded to the GPU to be used for lighting.
Check my website www.voltaico.net to learn more about the engine. In the Games & Demos section you can download a demo called "Kindergarten" that I created to show its capabilities.
Here is a ">video of the engine running.
And here are some screenshots:



[Edited by - jcabeleira on December 12, 2010 2:45:00 PM]
I'm here to present the work I've done for my master which is a rendering engine called Serenity that combines GPU lighting and ray traced lighting in order to approximate global illumination.
The main idea behind this work is that GPUs have become powerful enough to generate diffuse global illumination effects. However, sharp global illumination effects like reflections and refractions are still hard to generate using rasterization based techniques, in this case ray tracing is better suited.
Therefore, the engine combines the best of two worlds by using rasterization to generate direct lighting and indirect diffuse lighting, and ray tracing to generate reflections and refractions.
In particular, the engine generates direct lighting through phong illumination and soft shadow mapping generated with the Percentage-Closer Soft Shadows technique.
The indirect diffuse lighting is simulated by an implementation of the Light Propagation Volumes technique combined with a technique that I developed, called Sky Lighting Irradiance Volume, which simulates sky lighting and Screen Space Ambient Occlusion.
The ray traced reflections and refractions are generated by an hybrid real-time ray tracer that splits the rendering process between the CPU and the GPU to take advantage of their particular computing benefits (i.e. coherent vs inchoerent processing). All the ligthing is processed on the GPU, even for ray traced effects, by using Deferred Rendering to unify all the lighting. What the ray tracer does is generate G-buffers containing information about the reflected/refracted scene that are uploaded to the GPU to be used for lighting.
Check my website www.voltaico.net to learn more about the engine. In the Games & Demos section you can download a demo called "Kindergarten" that I created to show its capabilities.
Here is a ">video of the engine running.
And here are some screenshots:



[Edited by - jcabeleira on December 12, 2010 2:45:00 PM]