Mel Slater, Jesper Mortensen, Pankaj Khanna, Insu Yu
Paper 144 - submitted
Abstract:
This paper describes an
algorithm that provides real-time
walkthrough for globally illuminated scenes that
contain mixtures of ideal diffuse and specular surfaces.
A type of light field data structure is used for propagating
radiance outward from light emitters through
the scene, accounting for any kind of L(S|D)* light
path. The light field employed is constructed by choosing
a regular point subdivision over a hemisphere,
to give a set of directions, and then corresponding
to each direction there is a rectangular grid
of parallel rays. Each rectangular grid of rays is further
subdivided into rectangular tiles, such that each
tile references a sequence of 2D images containing
colour values corresponding to the outgoing
radiances of surfaces intersected by the rays belonging
to that tile. This structure is then used for final
image rendering. Propagation times can be very long
and the memory requirements very high. This algorithm,
however, offers a global illumination solution
for real-time walkthrough even on a single processor.
Media:
The paper final submission (2.7MB doc)
The paper final submission (2.7MB pdf)
Powerpoint presentation given at CGI'04, Greece 17th of
June 2004 by Jesper Mortensen (1.8MB .ppt)
The videos (9.8MB zipfile containing all videos, resolution 256*256, codec mpeg1). All renderings were carried out on a dual-xeon 2.8GHz machine, with 3GB memory and nVIDIA FX5900 ultra.
Separate videos, please download to disk before
playing:
Cornell Room (4.5MB)
Smits & Jensen Caustic test scene
(1.8MB)
Office Scene (Real-Time Ray Tracing)
(3.6MB)
Office Scene (Progressive Rendering)
(2.7MB)
Colour images from final paper:
Figure 4 [a-d]:
Other images:
Rendering types:
[1] Full VLF.
[2] VLF specular and hardware texture mapped diffuse.
[3] Ray traced specular and hardware texture mapped diffuse.
[4] Fully ray traced with diffuse map lookups.
[1]
[2]
[3]
[4]
Cornell type scene (with mirror):
Original global illumination benchmark rendering: