
the Collection
see it. embody it
post a TDNCopy any specimen's TDN to your clipboard and paste it straight into a TouchDesigner .toe running Embody.


A raymarched 3D Mandelbulb fractal rendered entirely in one GLSL TOP. The classic distance estimator is marched per pixel against a slowly orbiting camera; orbit-trap values captured during iteration tint the surface, and soft shadows, a fresnel rim, and a proximity glow give it depth. No input, no feedback - a drop-in hero render, a looping VJ source, or a reference for distance-estimated raymarching.

A dense GPU particle swarm that flocks like a starling murmuration at dusk - cohering, separating, aligning, and flowing around a slow invisible attractor with curl-noise wander. True per-neighbor Reynolds flocking computed on the GPU (a Neighbor POP index list iterated in a GLSL POP), rendered as luminous additive point sprites.

A flowing GPU plasma. Two sine-wave fields at slightly detuned scales beat against each other into shimmering moire fringes, a slow rotating domain warp bends the coordinates into liquid motion, and the result is mapped through a cyclic cosine palette. Self-contained and stateless - one GLSL TOP, no input, no feedback - so it drops in anywhere as a VJ loop, texture, or displacement source.


Recreated from one reference screenshot and the prompt: "recreate this imagein TouchDesigner, exactly the same layout." Rather than eyeball it, the reference was measured programmatically — per-row baselines, cap heights and ink extents — which revealed that each line is centered on a smoothly drifting point, not ragged-left as it appears. Those numbers became the table. Read left to right: table_lineup (name | code | centre) plus a Noise CHOP feed script_spec, which emits a Text TOP Specification DAT — a table where each row is one string with its own x/y — sizing each name via evalTextSize() so the superscripts land correctly. select_names / select_codes split that into two Text TOPs, because the spec DAT positions per row but ignores per-row font size. They composite into out1. Verified by capturing the render and re-measuring it against the source: line centres match within 0.6 px RMS. Noise CHOP Amplitude drives the stagger — at 0 it's the exact reference frame. All geometry is stored as canvas fractions, so it's resolution independent.
no specimens match that filter.
loading...