An interactive, real-time 3D scroll journey through Lightshade Creative’s art pieces and installations — creative-coding and TouchDesigner work rebuilt for the web. Each piece below is presented as a live WebGL scene; the text here is the accessible, indexable version of that experience.
Ditherfall
Art · 2025
Dither(ing) + (Rain)fall, creates underlying images by varying droplet speed.
A field of droplets falls across over a hundred columns. Each drop's speed isn't constant — it's read, moment to moment, from the brightness of an image at the drop's own position.
Where the picture is bright the rain slows and piles up; where it's dark the rain races and thins. No threshold, no halftone grid — the image resolves purely as the density of falling particles, a dither made of motion.
Rebuilt here in WebGL from a TouchDesigner study: the whole field integrates on the GPU, a single mono texture steering a hundred thousand velocities in real time.
Technique
GPGPU per-particle velocity sampled from image luminance
Emergent density 'dither' — no threshold matrix
Instanced rainfall across a dynamic column grid (GPU)
Tools
TouchDesigner
GLSL
WebGL
Dead Signal
Art · 2026
A luminance-displaced GPU point cloud of a glitching skull — a DedSec transmission rebuilt in real-time WebGL.
A transmission from the underground — a nod to DedSec, the hacker collective of the Watch Dogs series.
The skull is a point cloud: every point is pushed out of the dark by the brightness of a source clip, so the face surfaces and glitches back into the void frame by frame, a datamosh title melting over the top.
Rebuilt in real-time WebGL — hundreds of thousands of points, cursor-proximity tendrils weaving a live network, and a detector-box HUD scanning the artifact.
Technique
GPU point cloud, luminance-displaced from a source clip
Optical-flow feedback datamosh title
Cursor-proximity tendril network + blob-scan HUD
Tools
TouchDesigner
React Three Fiber
GLSL
ASCII Flux
Art · 2026
Shuffling ASCII glyphs as a real-time post-process over a rotating cube.
A study in legibility at the threshold of noise — type that is always resolving and never quite settling.
Each frame, source luminance is quantised into a glyph from a hand-tuned ramp, then perturbed by temporal noise so the field shimmers between order and static.
Originally a real-time TouchDesigner network, re-implemented here in WebGL so the field reacts to you — the cursor sheds little shockwaves of corruption through the glyphs.
Polished stone marbles ride the crests of an endless field of sine-driven blocks — the wave forever rolling beneath them.
A toy with one rule: keep the marble on the peak. A grid of blocks rises and falls as a traveling wave, and each marble is pinned to a crest — so the floor rolls forward to meet it, endlessly.
It started as a study in instanced geometry and phase: thousands of identical blocks, a single sine, a handful of textured spheres. The result reads as play — bright, tactile, faintly absurd.
Rebuilt here in WebGL from the TouchDesigner original; the wave runs live in the vertex shader, so the whole field stays in motion at sixty frames a second.
Technique
Instanced blocks, height driven by a traveling sine (GPU)
A contorting core of instanced geometry, shattered through a field of displacement shards — the //:ANTIMATTER:// study, rebuilt in real-time WebGL.
A turbulent geometric study inspired by the hostile astral entity from Remedy's Control.
The fractured, hard-to-read form is built from real 3D geometry rather than flat post-processing, so it only resolves as it moves — a dense, chaotic field of cubes and shards held in constant, unstable motion.
Technique
Screen-space displacement shards re-sampling the live frame (GPU)
Geodesic-instanced cube core with analytic multi-axis twist
Inspired by DedSec — the underground collective of the Watch Dogs series — and its mission to wrest control back from the surveillance machine: the data-barons, the algorithms, the quiet authoritarian creep of corporate and government oversight.
Technical note
The skull is a GPU point cloud, luminance-displaced from the source clip. The datamosh smears each row in blocks and splits the colour channels. The text you're reading is itself arranged in 3D — each word hangs in space ahead of the fly-through and settles back into the block as the camera arrives.