For this assignment I had to use Direct3D 10 and author HLSL shaders to render a scene with Lighting. We were given a basic C++/Direct3D 10 application (no pipeline) and geometry/material was provided through a delegate object. I also implemented the camera.
The application/shaders have been implemented in a way which allows an arbitrary number of lights can be passed into the shader for rendering (which used both diffuse and specular lighting). I have also fixed a point light to the camera.
Using knowledge gained shortly after this assignment, we were introduced to bump mapping. In this demo I altered my previous assignment to use an arbitrary image file as a normal map which was then wielded by the pixel shader.