A Physics-based Introduction to Computer Shading Techniques

Overview and Purpose

Computer graphics holds a significant role in our everyday lives. Any photorealistic digital media we consume is likely to have some sort of shading or lighting effects applied to it: the movies we watch, the games we play - all approximate the real world in some way. So, it's up to us to try to model light interactions as accurately as possible.

By understanding shading techniques, we gain a better understanding of the digital - and physical - world around us. We also gain an appreciation for some physics behind light and color.

This webpage outlines the computer graphics pipeline, the physics of light and the mathematics behind a few common shading techniques. It also overviews the design of a WebGL-based demonstration that allows the user to interact with the shading techniques, as well as a hands-on demonstration of light interacting with the same objects seen in the WebGL demonstration.

This is accompanied by a presentation that is geared towards a Grade 11 or 12 audience, either in a Physics class or in a Computer Science class. No previous computer science or complex mathematical background is required. The Physics concepts relate to a light and color, optics, or waves unit.