# ASCII Bloom

> Three thoughts clarify in parallel. Where they overlap, the picture appears. Where they don't, the noise stays.

## Philosophy

A single point of focus is one model of cognition: attention narrows on one thing, sharpens it, and the rest of the world fades. *Many* points of focus is another, and it is the model that actually describes how working systems think. Three streams of evidence land at the same time; three small clarifications converge from different directions; the full picture appears in the region where all of them agree. *ASCII Bloom* is that second model rendered as image. It is a portrait that does not clarify from the centre out; it clarifies from *three* centres at once, and what the viewer sees is the way those three local clarifications intersect.

The piece begins as a field of static — a grid of ASCII glyphs whose indices are driven by 3D value noise sampled at low frequency. It is the visual equivalent of unmoderated input: structured but uninterpreted, in motion but going nowhere. Then, at a designated moment, three invisible expanding circles begin propagating from three points placed across the frame. Inside each circle, cells switch from their noise glyph to their target glyph — the character determined by the luminance of the underlying source image at that cell's position. Where two circles overlap, the picture appears with double confidence; where all three overlap, the centre of the portrait emerges; where no circle reaches, the noise persists. The corners and a band running between the bloom centres remain in noise for the entire piece. The halo is *not a bug* — it is the brand's argument that intelligence is what's left when noise resolves *partially*, not totally.

This is the brand's epistemology, sharpened. *We do not promise complete certainty.* The viewer is shown that the picture is real where the system has enough confidence to commit, and unresolved where it doesn't. The persistent halo is the visible margin of doubt. A piece that fully resolved the noise would be making a claim that no working system can honestly make. The bloom must stop somewhere; what it leaves behind is as important as what it shows.

The three centres are placed in a triangle — upper-left, upper-right, lower-centre — so the union of their discs covers the visually meaningful regions of the typical portrait composition (forehead, face, body) without spilling into the corners. As the circles expand, they overlap progressively: at one-third bloom, three small clarified discs are visible; at half, the upper two have joined into a horizontal band; at peak, all three discs have merged into a connected clarified region with the noise halo still surrounding it on all sides. The collapse runs the geometry in reverse: the three circles shrink from the edges inward until each is a point, then the field is back to pure noise. Loop seam clean.

The discipline of *ASCII Bloom* is the refusal to fill the frame. The temptation when designing a reveal animation is to make the clarified region grow until it owns the entire image — that's the gesture every viewer has seen a thousand times. *ASCII Bloom* refuses that. The peak radius of each bloom is set deliberately small so the merged region covers about seventy percent of the active area at most. The remaining thirty percent stays in noise across the whole loop, including the held middle frames. The viewer who pauses on the held frame sees, simultaneously, the resolved portrait and the unresolved field around it. That is the piece's argument, drawn in real time: *the answer and its margin of doubt arrive together.*

There is also a subtler claim. By having three centres rather than one, the piece refuses the romance of the single observer. A single radial reveal stages the viewer as a god: a cone of attention emanates from one point, and the world becomes legible. *ASCII Bloom* stages the viewer as one of three observers: the picture is the result of *parallel* clarifications, none of them sufficient on its own, all of them necessary together. This is closer to how a working system actually arrives at understanding — and to what Datacode means when it says that intelligence is an emergent property of multiple agents working at once.

## Algorithmic Expression

- **Grid**: `RAMP = ' .,:;ox%#@'`, `FONT_SIZE = 8`, 216 × 131 cells (upper portion of stage).
- **Source**: Image loaded once, rasterised into a `Uint8Array(COLS * ROWS)` of glyph indices (luminance-mapped). Auto-centred via luminance-weighted centroid + ±2.5σ spread crop.
- **Three centres**: Placed at `(0.34, 0.32)`, `(0.68, 0.42)`, `(0.50, 0.78)` of the grid (cells). Triangle composition; each anchors a meaningful region of the typical portrait layout.
- **Per-cell reveal**: `k = max over centres of softband((r − d_to_centre) / BAND + 0.5)`, where `r = phase × BLOOM_PEAK_R`. The MAX operation makes overlapping circles compose by union, not sum, so saturation can't exceed 1.
- **Peak radius**: `BLOOM_PEAK_R = 0.42 × ROWS` ≈ 55 cells. Small enough that the union of the three discs leaves a persistent halo of cells in noise mode at the peak — the brand's deliberate margin of doubt.
- **Loop (12 s)**:
    - 0.0 .. 2.0 — pure noise (everywhere)
    - 2.0 .. 5.5 — three-way bloom outward
    - 5.5 .. 8.5 — hold + signal pulse on highlight cells
    - 8.5 .. 12.0 — three-way bloom collapses inward; halo reclaims the field
- **Signal accent**: Brightest tier glyphs render in `--signal` only when within a clarified region (k > 0.7 AND target glyph is in top tier).
- **Seam**: At t=0 and t=12, every cell is in noise mode → invisible loop.

## Brand Fit

`ascii-magic` reveals via single diagonal sweep (industrial / engineered feel). `ASCII Bloom` reveals via *three* radial waves with a deliberate noise halo (cognitive / parallel / honest-about-uncertainty). The two pieces share the image-to-ASCII pipeline but argue different things about what reveal *means*. Use `ascii-magic` when the brief calls for *engineering*, *scanning*, *transmission*. Use `ASCII Bloom` when the brief calls for *parallel cognition*, *agreement-among-observers*, or any moment where the brand wants to be honest that intelligence is partial.
