Posted 26 March 2010 - 09:23 AM
That is simply one of the ways of doing it.
For example for normal maps in object space as those exported from L3DT for example, you don't need vertex normals i think.
Calculate the dot between the light direction and the normal in the vertex shader and pass that float to the pixel shader. In pixel shader, sample your bump-map texture sampler extract a normal from it, add it to the "float dot" passed from the vertex shader and use that "float dot" for your final color calculation of the pixel. That works for "detail normal mapping" with conjunction with vertex normals being present and used to calculate the "overall" lighting.