OpenGL Shaders

Surface Shaders, Post-Process Shaders, Worley Noise, Perlin Noise C++, GLSL, QT

For this project, I wrote multiple shaders in GLSL and constructed a polar spherical camera model to be able to navigate around the scene.

Polar Spherical Camera

I implemented functions that rotate the camera’s eye position around the up vector and the local right vector, as well as functions that allow panning and zooming.

Surface Shaders

Blinn-Phong

Matcap

Red Wax, Plastic, Gold

Vertex Deformation Shader

The model normalizes all of the vertex positions to create a sphere, and interpolates from its normal form over time. Then, it uses each fragment's UV coordinate to calculate its distance from the center, and gives that offest to a sine function to generate the rainbow wave.

Post-Process Shaders

In order to create post-process shader effects, you first have to divert the output of the inital render to a texture within the frame buffer.

Sobel Filter

Gaussian Blur

Custom Worley Noise Shader

Custom Perlin Noise Shader