Graphics 3D: Basic Local Illumination

Basic Local Illumination

This video introduces the concept of a local illumination model for calculating reflections without propagating light through the entire scene. Such models are used extensively in high-performance areas such gaming, where rendering speed is important. The classic example of a local illumination model is the Phong Reflection Model, sometimes called the Phong Lighting Model or Phong Illumination Model. The Phong Model, together with a variant developed by Jim Blinn, form the basis of lighting in most commonly used graphics systems, such as OpenGL and Direct3D.

Although we have calculated the lighting above without using graphics libraries, like OpenGL or DirectX, we will defer the explanation of the equations for a later time. For the present discussion we want to present enough of an explanation so that you can understand and use libraries like OpenGL and DirectX effectively.

Here, we show the lighting of the surface broken into its ambient, diffuse, and specular components. The ambient component represents light that hits the surface from other non-light objects in the scene. The diffuse and specular components account for light that comes directly from a light source.

To simplify the calculation, the ambient component is assumed to be constant throughout the scene. The diffuse component, often called Lambertian reflection, models light that is absorbed and emitted equally in every direction; so it depends on the position of the light source, but not the viewer. Above, we can see that the diffuse component is lighter at the horizontal points in the graph, since the light is coming from above. The specular component models smooth, mirror-like surfaces that have direct reflections. Specular reflections depend on both the light source and the observer.