Monday, April 19, 2010

Deferred Rendering

Since my last update, I've done quite a bit of work on PyStream to finish off my dissertation.

The example rendering system is now a deferred rendering system, and includes a pass for screen-space ambient occlusion (SSAO). This is type of rendering system that is the "hot" thing for games right now; this technique is being used in Crysis 2 and Starcraft 2, among others.  The statue of Beethoven that is nearest to the camera is entirely unlit, except for ambient lighting.  Despite this, the shape of the statue is still apparent, due both to SSAO and to the use of HDR cube map ambient lighting.

 The shaders being generated by the compiler are pretty much what I'd write by hand.  The overall rendering system easily achieves 60 fps on a mid-range video card despite the fact that it is written entirely in Python.

No comments:

Post a Comment