From 633721e0ced4547ec0cb49ea68becb70fa39b406 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel=20=C3=81ngel?= Date: Sat, 8 Aug 2026 16:21:01 +0000 Subject: [PATCH] feat(registry): add the halftone-field texture block A grid of dots whose size and colour track a flowing noise field, so broad diagonal ridges sweep across a mostly-black frame. The catalog has no texture register at all, and this is a background that runs under type without competing with it. Closed form by construction: the field is a pure function of position and time, so the whole port is uTime = frame / fps. No accumulator, no PRNG, no history. Direct seek, stepped playback and a repeat run all hash identically. One pass rather than the reference's two. Its first pass is analytic, so evaluating the noise at each cell centre returns exactly what a texture fetch would; the render target only earns its place if the field ever becomes something that cannot be evaluated closed form. Two defaults depart from the reference, and its own arithmetic is why. At paletteBias 10 the bias is 0.5, and since the gamma curve lands in [0, 0.70], the value driving both radius and colour is pinned to [0.5, 1]. That puts a hard floor under every dot so nothing can reach black, and narrows the palette window so the first colour stop is unreachable. It renders as a flat evenly-lit lattice. Every formula and mapping is kept verbatim; only paletteBias and frequency move, and both are one slider from the reference values. --- docs/catalog/blocks/halftone-field.mdx | 59 +++ docs/docs.json | 1 + docs/public/catalog-index.json | 15 + .../blocks/halftone-field/halftone-field.html | 378 ++++++++++++++++++ .../blocks/halftone-field/registry-item.json | 108 +++++ registry/registry.json | 4 + 6 files changed, 565 insertions(+) create mode 100644 docs/catalog/blocks/halftone-field.mdx create mode 100644 registry/blocks/halftone-field/halftone-field.html create mode 100644 registry/blocks/halftone-field/registry-item.json diff --git a/docs/catalog/blocks/halftone-field.mdx b/docs/catalog/blocks/halftone-field.mdx new file mode 100644 index 0000000000..c7fb58309b --- /dev/null +++ b/docs/catalog/blocks/halftone-field.mdx @@ -0,0 +1,59 @@ +--- +title: "Halftone Field" +description: "A full-bleed halftone light field: a grid of dots whose size and colour track a slow flowing simplex-noise field, so broad bands of light sweep across a mostly-black frame like a giant LED wall showing a plasma. Built to run under type." +--- + +