TLB/Logs

playing with GLSL shaders in the browser

Exploring generative visuals by writing fragment shaders from scratch and rendering them in real-time with WebGL.

Why shaders?

Shaders are the closest thing to painting with math. A fragment shader runs once per pixel, every frame — giving you direct control over color and light at the most fundamental level. The constraints force creative thinking.

Setting up a minimal pipeline

No frameworks, no abstractions — just a canvas, a WebGL context, and a GLSL program. The boilerplate is surprisingly small: a fullscreen quad and a fragment shader is enough to create infinite visual complexity.

Experiments with noise and distance fields

Perlin noise, Voronoi cells, signed distance functions — these building blocks combine into organic, endlessly evolving patterns. Each tweak to a parameter produces something unexpected.

/Keep reading