Shadertoy Experiments
A downloadable project
Hey! My name is Van Andrew.
During uni break I decided to learn the basics of GLSL using Shadertoy. This page documents some notable projects and what I learnt from each of them.
I've learnt techniques most notably of generating noise, drawing simple shapes and ray marching. In combining these techniques I can procedurally model shapes using SDF's and manipulate them in simple ways using said shapes and noise, as opposed to traditionally modelling them by hand.
You can click on the images below to see the source code!
Or just visit my github.
Showcase
Really happy with this one. I showcase eight different material shaders. Pawn themselves are torus, cylinder and sphere SDF's. From left to right: brushed metal, clay, acrylic, glass, plastic, metal, wax, rock. Shader takes multiple bounces between pawns but NOT with lights so far.
Fur hypertexture using noise texture. Hypertexture extrudes SDF in raymrach function.
I went back and redid my terrain shader for the 3rd time. This time I used a texture to create ridges and lit it using 2 lights. Much prettier image. Process video here.
This is a version of Conway's Game of Life which uses cellular automata to create emergent behaviours. I've added a visual changed where pixels leave a 'trail' of where they have been which fades over time, much like slime. I've added CRT effects to add that retro feel.
Video Showcase 1 | Video Showcase 2
Resources
I'd like to draw attention to these amazing resources; and the source of much of my learning.
The Art of Code Youtube Channel | The Book of Shaders | Inigo Quilez's Blog | Learn OpenGL | Alan Zucconi's Blog | Chris's Blog | Demofox Blog | GPFault Blog | kevs3D Blog | ScratchAPixel Blog | reindernijhoff's Blog | Alain's Blog | Catlike Coding
I will be updating this page with new shaders as I make them. This page acts as a portfolio of sorts, showing the highlights of my journey. Enjoy!
Status | In development |
Category | Other |
Author | Van Andrew |
Leave a comment
Log in with itch.io to leave a comment.