These are little shader artworks I do on the weekend.
Sunday, April 5 - OBJ Rendering
I wrote a simple program that takes a OBJ file and creates a shader program that renders the geometry. Examples from a sample dataset are provided in the file.
π obj_renderer.py
python obj_renderer.py input.objobj_renderer.mp4
Sunday, August 24 - Infinite Tower of Lire
I wrote a program that renders an infinite stack of blocks at a harmonic offset. The effect resembles a waterfall of blocks being stacked on top of each other. Inspired by a math video I was watching on YouTube about the subject.
π tower_of_lire.glsl
tower_of_lire.webm
Saturday, August 3 - SDF Tunnel
I wrote a program that renders a tunnel full of hexagons inspired by an old game I used to play called Run. The curve of the tunnel can be adjusted using the mouse.
π tunnel.glsl
tunnel.webm
Saturday, July 6 - SVG to Shader Compiler
I wrote a program which compiles a svg to a shader. Currently the program is very simple and does not do any optimization.
π svg_to_shader.py
python svg_to_shader.py input.svgSaturday, June 27 β Katana
I drew a katana with simple shapes and gave the blade a gradient. It would be cool to animate in the future.
π katana.glsl
Sunday, June 15 β Procedural Character Animation
More procedural character movement added a wiggle and jumping movement.
π showman.glsl
showman.webm
Sunday, June 15 β Neural Network Visualization
I wanted to write a program to visualize a fully connected neural network. I used a different color gradient for each network connection in combination with each layer.
π neuralnet.glsl
neuralnet.webm
Sunday, June 15 β Voxel Raymarching Chicken
I used voxels to design a chicken and rendered it using raymarching.
π voxel_chicken.glsl
voxel_chicken.webm
Sunday, June 1 β Procedural Snake Animation
I animated a snake procedurally. The snake body segments follow a smooth trajectory.
π snake.glsl
snake_long.webm
demo 2
snake_short.webm
Saturday, May 24 β Grass Movement
I simulated a bunch of little grass pieces being moved by the wind. I liked the color palette I used.
π grass.glsl
grass.webm
Friday, May 23 β Ray Marching Letters
I drew the first letter of my name "M" using Ray Marching and a custom signed distance function (SDF). In future work I could try to render more complex tetrahedra
π sdfM.glsl
sdfM.webm
Sunday, May 18 β Procedural Trees
I wanted to see if I could draw procedurally generated 2d trees as a shader. I had seen some examples, but was wondering if I could do something similar to the recursive approach inside a shader.
Sunday, May 11 β Starfield
I turned my old highschool project below into a shader.
π starfield java π starfield.glsl

