


Module Brief: To develop a set of shaders and an accompanying application to demonstrate them. To create a single scene to demonstrate all the shader stages created using the render pipeline.
My objective was to recreate the Halo 3 multiplayer map ‘Valhalla’, using models from the game, which were adapted to fulfil the coursework requirements.
Rather than using the existing 3d model for the ground terrain, I used a heightmap on a quad, which was dynamically tessellated based on activity density.
I used a flow map and sin wave manipulation to give the impression of flowing water in the river which bisects the canyon. The vertex normals of the water are dynamically calculated as they move. The river mesh is dynamically tessellated based on the distance from each original triangle to the camera.
I used a geometry shader to place some rudimentary grass around the scene. The scene has movable lighting and dynamic shadow mapping.
I created an outline post processing technique using an edge detection shader to create outlines around the objects in the scene.
In this project I have learned the benefits of visual debugging. I used specialised shaders, such as the “normals” geometry shader, to draw the vertex normals of the terrain and water to make sure they were correctly calculated. This technique was of great effect and will be of benefit in future projects.