University Project: Create a renderer using Direct3D and C++. Include objects with complex geometries to demonstrate the robustness of the renderer. The project had to include at least 2 point light sources, idle animation on lights or objects, concave objects and objects with holes.
- Phong shading implemented per pixel using own custom shader.
- Lighting calculations based on previous 3D Software Renderer project.
- Models have material properties including specular power, ambient and diffuse intensities.
- Shadow maps are generated by rendering the scene from the light’s point of view using a shadow map generation shader.
- Use of shadow maps means that shadows can be cast onto curved surfaces and can self shadow. The camera can also be placed within a shadow with no detrimental effects.
- Texture mapping.
- Bump mapping.
- 8 lights with different colours and positions can be turned on/off at run time.