Skip to content

MatthewAndreTaylor/WeekendShaders

Repository files navigation

Weekend Shaders

These are little shader artworks I do on the weekend.

πŸ—“οΈ Shader Logs

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.obj
obj_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.svg

canoe_raster

example input

example_input


Saturday, 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

katana


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.

πŸ”— procedural_trees.glsl

tree_0 tree_1

Sunday, May 11 – Starfield

I turned my old highschool project below into a shader.

πŸ”— starfield java πŸ”— starfield.glsl

starfield.webm

About

Shader projects and artwork made on my weekends

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors