GLSL Shaders
This project includes a variety of GLSL shaders:
Surface Shaders:
Lambert, Blinn-Phong, Matcap, Custom βCubifyβ surface deformation
Post Process Shaders:
Sobel (edge detection), Gaussian Blur, Custom βVoronoi Nukeβ shader
Hereβs a closer look at some of themβ¦
βCubifyβ surface deformation
This effect was accomplished by interpolating between Marioβs normal vertex position and a unit cube centered at his object space origin.
The `u` value for interpolation was made using this curve formula I made using Desmos! It creates a bouncy effect which was quite fun to make.
See the graph here! https://www.desmos.com/calculator/znsvjnu90t
βVoronoi pixelateβ
I started with a base voronoi function, then fed it into a second one. I then rotate the position of the Voronoi point around the cell center, giving this βwarblyβ effect when layered.
The base image also goes through a βposterizeβ pass that splits the image into fewer tones.
βVoronoi Nukeβ
On a timer, I interpolate the base voronoi pixelate effect with a βnukifiedβ verision. I spent a few hours messing around in the shader until I stumbled on this effect, and I think itβs pretty neat!
The fading effect was accomplished with a `max` function, which takes the pixel with the maximum brightness. As the βnukifiedβ version gets brighter over time, it will overtake the original image, at separate times in the R G and B channels.