This is a first implementation of the deferred Lighting shader. It’s cool! In this picture, you see 14 Lights (represented by Cubes) and two teapots that receive the light.
You can also see that there’s no soft falloff and no directional lights yet. Those things aren’t super-duper hard to implement though.
Deferred Lighting actually means that instead of calculating the light when the individual object is rendered, you do all of the calculations on the finished image. So the lighting calculation is not depending on scene complexity.
You can use the same approach to do shadow map calculations, or projected textures for example.