2008
possible, ideally in real time (30 images per second). Currently, no single global
illumination algorithm can accomplish both goals.
Ray-Tracing
One of the first global illumination algorithms developed is known as
ray-tracing. The ray-tracing algorithm recognizes that although billions of
photons may be traveling about the room, the photons we primarily care
about are the ones that enter the eye. The algorithm works by tracing rays
backward, from each pixel on the screen into the 3D model. In this way, we
compute only the information needed to construct the image. To create an
image using ray-tracing, the following procedure is performed for each pixel
on the computer screen.
1 A ray is traced back from the eye position, through the pixel on the
monitor, until it intersects with a surface. We know the reflectivity of
the surface from the material description, but we do not yet know the
amount of light reaching that surface.
2 To determine the total illumination, we trace a ray from the point of
intersection to each light source in the environment (shadow ray). If the
ray to a light source is not blocked by another object, the light
contribution from that source is used to calculate the color of the surface.
3 If an intersected surface is shiny or transparent, we also have to determine
what is seen in or through the surface being processed. Steps 1 and 2 are
repeated in the reflected (and, in the case of transparency, transmitted)
direction until another surface is encountered. The color at the subsequent
intersection point is calculated and factored into the original point.
4 If the second surface is also reflective or transparent, the ray-tracing
process repeats, and so on until a maximum number of iterations is
reached or until no more surfaces are intersected.
Default Scanline Renderer Rollout | 5981