|
Submitted by , posted on 28 January 2005
|
|
Image Description, by
This screenshot represents a technique I came up with to perform high
dynamic range rendering and spherical harmonics lighting on pixel shader 1.3
hardware. The high dynamic range rendering effect was done with help from P.
Debevec's paper on HDRTMs and the
spherical harmonics lighting with help from R. Green's paper.
Since both effects operate on a light probe, we've decided to combine them,
and the results look promising.
The spherical harmonics lighting has been done per-vertex with 2
radiosity iterations and is PCA compressed.
The HDR rendering is done by transforming the 16-bit per component light
probe into two 8-bit cube maps (retaining full precision). The geometry is
rendered with both cubemaps (just vertex transform and cubemap sample) and
the resulting render targets are then added together with the result from
the SH lighting, and the high 8-bit render target is bloomed (horizontally
and vertically). We intend to add support for a user defined rotated grid
for blooming.
The whole combination can be done on any PS 1.3 compatible hardware
(we've done it on a GeForce4 4200).
More interesting screenshots:
http://freeweb.siol.net/baadc0de/fdri5.jpg
http://freeweb.siol.net/baadc0de/fdri7-1.jpg
http://freeweb.siol.net/baadc0de/fdri7-2.jpg
http://freeweb.siol.net/baadc0de/fdri7-3.jpg
http://freeweb.siol.net/baadc0de/fdri7-4.jpg
This and more will be part of my first commercial 3d/game engine.
There's also more demos there (visit http://www.narniax.com and see for
yourself). Of course the real engine is not done on the directx framework,
like most of the samples found on the site ;)
Thanks, Bojan Sernek.
|
|