The sponza palace is one of the most popular 3D scenes for testing global illumination and radiosity, due to its specific architectural structure which is particularly complex for global illumination. The first model was created by Marko Dabrovic in 2002.

Our first assignment in the real-time graphics signature was to create, using a specific API, all the necessary code to render properly this model.

This demo has been made using different modern render techniques: Deferred Rendering, Instancing, Uniform Buffers, etc.

Deferred rendering is a technique which consists into _defer _the lightning calculations to a different pass. In deferred rendering we differentiate 2 main phases:

  • Geometry pass
  • Lightning pass

In the geometry pass, we render all the objects in the scene into an element known ass G-buffer. The G-buffer is a collection of textures that we use to store certain information to allow us to regenerate the scene afterwards. In my case, I am using 3 textures (albedo, normals + shininess, positions). I use this textures in the lightning pass to make all light calculations.

From left to right and top to bottom: positions, normals, albedo and depth
From left to right and top to bottom: positions, normals, albedo and depth