directx shaders
project timescale: november 2014 - december 2014
In this program I create a cube and manipulate it via various shaders. These shaders can be controlled in the application. The cube is tessellated to add more vertices and these vertices are normalised to turn the cube into a sphere. The vertices are manipulated via various trigonometric calculations to make the sphere move in interesting ways. The amplitude of the waves passed through the object can be altered to control how much the vertices move. Two different blur shaders are used. A guassian blur and a radial blur. The guassian blur makes the object blurrier as the camera moves further away. The radial blur makes the object blurrier as it gets further to the edges of the camera's frustum. These blurs are done by rendering the scene to a texture multiple times. Once to down sample the image, once or twice (depending on which blur is used) to add the blur and one final time to up sample the image again. The user can switch between these blurs. There is also a negative shader that inverts the colours in the scene.