Shading is the process of applying a shading model to obtain pixel intensities or colors that we see for all rendered vertices and surfaces in a scene. It takes input from lights, materials and vertex positions.
A shading model describes how to calculate the intensity of light that we should see at a given point on the surface of an object.
Shading models are of two types: - Accurate models such as radiosity methods and empirical models based on simple photometric calculations.
A basic shading model
The illumination is calculated as a sum of the ambient, diffuse, specular and emissive light per vertex.
Illumination = Ambient Light + Diffuse Light + Specular Light + Emissive Light
Major shading models :
Flat shading
Goraud shading
FastPhong shading
GPUs allow the programmers to customize the rendering portion of the pipeline using shader programmers or scripts.
More on shaders from knol:
http://knol.google.com/k/koen-samyn/hlsl-shaders/2lijysgth48w1/2#