# phase by Loren Bednar

## Work and context

Loren Bednar's *phase* makes a picture retain traces of its own recent past. Its colours are calculated anew, displaced through space, and mixed with an earlier frame. In the five originals examined here, that procedure supports both faint fields of colour and emphatic, stepped masses. A fine regular texture can remain conspicuous while the larger image changes beneath it. The result is a mathematical image with memory.[^S02][^S05][^S06][^S07][^S08][^S09]

Art Blocks identifies *phase* as a Curated collection of 1,024 works, publicly released on 20 August 2021. The artist describes incompatible realities, interference, echoes and occasional passages of calm. These are his framing terms, not a claim that the program simulates a physical system. The project also carries his explicit warning about flashing colours and moving patterns, retained with the live presentation.[^S01]

The header presents *phase* #849, held in an address belonging to AB5D's current three-wallet profile. Its purple and magenta field is crossed by tightly spaced horizontal dark lines, while larger regions change their balance beneath that texture. The original renderer was observed at successive moments and its click-to-pause control tested. Its indexed 32 × 32 resolution describes a computational grid, not the dimensions of the displayed artwork.[^S09][^S11][^S02]

## Conception

In Jeff Davis's pre-release interview, Bednar recalls teenage experiments with LOGO, followed by Flash-based work in 2006. He developed mathematical imagery alongside commercial work and encountered Joshua Davis's practice through a job. Art Blocks supplied a public setting for experiments that had already occupied him for years.[^S03]

His account gives *phase* a specific origin. Earlier experiments with interference and interacting functions were static; he wanted to develop moving versions. Twitter compression damaged the experiments he shared, but he became interested in those altered results. The released work grew from exploring that accident alongside fluid colour.[^S03]

That origin matters to reading the source. The program actively quantizes coordinates, selects different spatial operations and adds regular dark marks. Its disruption is generated at playback, rather than depending on Twitter to damage the result again. A contingent experience has become a set of repeatable choices. This is an inference from the relationship between the interview and the program, not an assertion that every source branch reproduces a specific historical compression artifact.[^S02][^S03]

## Construction

The complete indexed artist script contains 22,999 UTF-8 bytes. The runtime record says `js@na`; the program directly creates a WebGL context, compiles shaders and allocates textures and framebuffers. It does not use p5.js. No external image loads or audio system were found in the inspected code. Its principal raw material is arithmetic evaluated across a square image.[^S02]

The token hash supplies 32 bytes. Different bytes choose colour, resolution, directional effects, coordinate transformations, timing and other branches. Resolution is selected from powers of two between 16 and 1,024. The actual canvas takes the smaller window dimension; the program scales its logical coordinate grid to that canvas. A feature such as 32 × 32 therefore does not require a screen only 32 pixels across. It means that a coarse computational grid is being shown at the available display size.[^S02]

Variation extends into the shader itself. JavaScript selects fragments of shader source before compilation, combining alternative arithmetic operations rather than simply passing different colours to one fixed drawing. The options include coordinate sums and products, divisions into strips, distances from selected centres, angular divisions, reflections and transpositions. These operations establish families of structure. A token can change the relationships among coordinates as well as the eventual palette.[^S02]

There are 26 stored five-colour palettes, with the eligible pool reduced at higher resolutions. Further branches replace colours with related hue and brightness values or create a largely dark palette with a bright exception. An additional dark colour is appended. Consequently palette selection is partly conditioned by the rest of the system. The relationship between palette and logical resolution is not merely a coincidental pairing in the feature table.[^S02]

For each frame, an art shader computes values from coordinates and a changing counter. It applies several transformations, including absolute values, square roots, wrapping and conversion into discrete colour choices. These are authored image operations. The language of interference is useful for their optical ambitions, but the inspected implementation does not establish a physical wave simulation with measured quantities or a scientific model.[^S02]

The subsequent passes are central to the work's identity. A spatial pass samples displaced copies of the image along directions selected by the token. Its offsets reach a substantial fraction of the texture, so describing it simply as a gentle local blur would hide the scale of the operation. Vertical, horizontal, crossed and diagonal arrangements can produce different relationships between a location and its displaced neighbours. Another branch omits that additional spatial treatment.[^S02]

A blending pass then mixes the new result with a stored earlier image. The inspected factor gives the earlier state 90 percent of the mixture and the new state 10 percent. That numerical choice makes persistence structural: the newest calculation does not immediately replace everything that came before. The blended result is saved for the next update. A final pass adds row, column or checker-pattern darkening according to the selected branch. Spatial displacement, temporal persistence and regular masking are separate operations whose effects accumulate.[^S02]

Animation uses `requestAnimationFrame`, incrementing a counter only while drawing is enabled. The counter wraps after a hash-derived number of updates. It is not based on elapsed clock time, so different frame delivery rates can change playback speed. Counter wrap alone also does not prove a perfectly repeating visual loop, because the stored image retains history. Reloading, pausing and waiting are therefore distinct operations in this renderer.[^S02]

A body click or any key toggles the drawing flag. The animation callback continues to schedule itself while paused, but rendering and the counter stop advancing. On the held #849, a click stopped the visible image; two subsequent observations remained unchanged, and another click restored visible change. The keyboard alternative was identified in code but not separately tested. No resize handler was found, and browser-to-browser pixel identity was not tested.[^S02]

## Mint and release

Fresh indexed records report 1,024 invocations and a current maximum of 1,024. The first token timestamp is 16 August 2021 at 21:08:31. Activation follows on 18 August at 21:26:45. The second token and indexed start occur on 20 August at 16:01:42, consistent with the collection page's public release date. Completion is recorded at 16:24:44 that day.[^S01]

The interval from the second token to completion is 23 minutes and 2 seconds. This is an interval between named indexed events, not a claim about an independently verified auction-opening second. The earlier token's purpose remains unresolved. The pre-release interview supports the Friday launch chronology but does not establish the exact opening price or every allocation.[^S01][^S03]

The current indexed price field is 1 ETH. It is retained as a present record observation, not promoted into a historical launch price. An original auction schedule, price changes, reserves and allocation conditions have not been recovered. These gaps prevent a complete account of how the edition was initially distributed.[^S01]

Art Blocks' September charity report associates *phase* with approximately $978,000 divided among Doctors Without Borders, Ronald McDonald House Charities, Leader Dogs for the Blind and local charities. The report explicitly combines artist-reported donations, funds set aside and pledge calculations. This is evidence of a contemporary charitable commitment and reported scale, not a reconciled audit of transfers to every recipient.[^S04]

## Rights and display

The current project record reports CC BY-NC 4.0 for the artwork. The operative Creative Commons terms permit sharing and adaptation for noncommercial purposes, subject to their conditions, including attribution, a licence link and appropriate indications of changes. The presentation retains the artist credit and licence reference. Neither token ownership nor the licence applied to this essay transfers ownership of Bednar's copyright.[^S01][^S10]

The script is visible through the official index, but no separate artist-code licence was found. This research package therefore records its digest and findings without redistributing the program. Native browser APIs are not a bundled creative-coding dependency with a separate p5.js or Three.js licence to report. Historical changes to the artwork's reported licence have not been established.[^S02]

The header uses the official original URL, with the artist's flashing-colour warning and a pause instruction. The original started without a play gesture during review, and the click control paused and resumed the held output. Earlier attempts failed to create a WebGL context; successful later inspection resolves the research blocker but does not guarantee compatibility with every browser. A GIF preview remains distinct from executing the original WebGL program.[^S09]

## Close reading of five outputs

The comparison uses early editions 0, 1, 10 and 20, plus the held #849. Each official original was viewed at more than one moment. This is a deliberately small comparison, not a survey of the edition's distributions. The observations describe the rendered states actually seen; they do not assign a measured cycle length or claim that a later viewer will encounter the same frame.[^S05][^S06][^S07][^S08][^S09]

In #0, a very fine checker texture overlays subdued red, magenta and olive-green regions. Broad horizontal swaths are easier to detect than discrete objects. In a later state, the green at lower left becomes more conspicuous while the red and dark bands redistribute. The texture provides a constant scale against which these larger changes can be read. Its softness belongs to the colour field behind the pattern, rather than to an absence of regular structure.[^S05]

In #1, the two observed states are almost monochrome. Fine alternating dark and light marks dominate the square, with faint broad changes of grey behind them. It takes longer to notice those changes than to recognise the surface pattern. This is a useful counterweight to the brighter examples: the series can make persistence perceptually quiet. The indexed Resolve palette and 32 × 32 logical grid do not, on their own, predict the contrast that the final composite will present.[^S06]

In #10, pale yellow occupies much of the right side while muted rose and cyan collect toward the left. The first observed state has a broad pink area at middle left and cyan below; the later state redistributes the cyan into narrower, oblique divisions near the lower edge. The fine checker pattern continues across these colours. Its 512 × 512 logical grid is much finer than #20's, but the final image still requires two scales of attention: the tiny regular marks and the broad chromatic divisions they cover.[^S07]

In #20, a large dark enclosure occupies most of the square. Its left edge rises through rectangular steps, suggesting a curve made from conspicuously square increments. Orange and yellow surround it, while violet enters along the upper and lower boundaries. Inside, a small violet square toward the right has much sharper local identity than the more diffuse surrounding colour. This produces an unusual balance: an image made from fields briefly offers something that the eye can treat as an object.[^S08]

A later state changes that balance. The dark enclosure becomes lighter and more violet, the small square loses its isolation, and wider bands cross the interior. The stepped outer edge remains a useful point of reference even as its relationship to the surrounding field shifts. What looked like an object contained inside another form is better understood as one moment in a continuing calculation. The fine checker texture is not just ornament over that change. It makes the coarse steps look larger, because both scales remain visible together. The comparison with #10 therefore concerns contour and apparent scale as much as palette.[^S08][^S07]

The held #849 replaces that checker emphasis with dense horizontal scanlines. Purple and hot magenta occupy much of the field; broad blue-black areas interrupt them. In one observed state the dark region gathers at lower left, with stepped boundaries extending toward the middle. In another, the dark structure reaches through the upper-left area and the brighter magenta becomes more assertive on the right. Larger rectangular divisions can appear architectural, but this is a reading of a transient arrangement, not a documented architectural subject.[^S09]

Pausing #849 makes the difference between those scales especially clear. The repeated thin lines can be followed across regions whose darker boundaries appear to belong to much larger blocks. When playback resumes, the larger divisions change without destroying the regularity of the fine horizontal register. The eye consequently has a stable measuring surface and an unstable image at the same time. The inspected feedback blend helps explain why the changes can leave softened transitions, while the coarse logical grid explains why some boundaries remain stepped. Neither fact alone accounts for the whole visual experience.[^S09][^S02]

## Significance and unresolved questions

The distinction of *phase* lies in its treatment of time as an accumulation within the image. It does not merely animate an arrangement of objects. It continually combines a newly calculated field with an image of its earlier condition. The present is computationally dependent on the recent past. In #20 and #849, strong temporary forms emerge from that process without becoming permanent subjects.[^S02][^S08][^S09]

Resolution is equally consequential. The five inspected originals move between subdued fields and conspicuous coarse contours, while their regular surface patterns invite close attention. The comparison is not a controlled experiment isolating one parameter, so it cannot quantify the effect of resolution alone. It does establish that the system sustains markedly different ways of looking: searching a quiet field for change, reading a large stepped enclosure, or following scanlines through shifting colour.[^S05][^S06][^S07][^S08][^S09]

Unresolved research questions:

- What were the original sale schedule, price steps, reserves and purpose of the earlier first mint?
- Can the reported charitable total be reconciled with dated recipient transfers?
- Was a separate artist-code licence issued, and did the reported artwork licence change?
- How much do display refresh rate, browser shader behaviour and initial viewport size change the experience?
- Does a pinned chain retrieval match the currently indexed artist program?

[^S01]: Art Blocks / Loren Bednar. [phase collection and fresh indexed project record](https://www.artblocks.io/collection/phase-by-loren-bednar). Accessed 2026-09-18.
[^S02]: Loren Bednar. [phase complete artist program](https://artblocks-mainnet.hasura.app/v1/graphql). Accessed 2026-09-18.
[^S03]: Jeff Davis / Loren Bednar / Art Blocks. [In Conversation with Loren Bednar](https://www.artblocks.io/articles/in-conversation-with-loren-bednar). Published 2021-08-18. Accessed 2026-09-18.
[^S04]: Druid / The Link, Art Blocks. [Update: Charity on Chain: 23.5 Million in August](https://medium.com/the-link-art-blocks/update-charity-on-chain-23-5-million-in-august-b4876db65c77). Published 2021-09-09. Accessed 2026-09-18.
[^S05]: Loren Bednar / Art Blocks. [phase #0 token record](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/143000000). Accessed 2026-09-18.
[^S06]: Loren Bednar / Art Blocks. [phase #1 token record](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/143000001). Accessed 2026-09-18.
[^S07]: Loren Bednar / Art Blocks. [phase #10 token record](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/143000010). Accessed 2026-09-18.
[^S08]: Loren Bednar / Art Blocks. [phase #20 token record](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/143000020). Accessed 2026-09-18.
[^S09]: Loren Bednar / Art Blocks. [phase #849 token and held artwork record](https://www.artblocks.io/token/1/0xa7d8d9ef8d8ce8992df33d8b8cf4aebabd5bd270/143000849). Accessed 2026-09-18.
[^S10]: Creative Commons. [Attribution-NonCommercial4.0 legal code](https://creativecommons.org/licenses/by-nc/4.0/legalcode.en). Accessed 2026-09-18.
[^S11]: Art Blocks / AB5D. [AB5D current collector profile](https://www.artblocks.io/profile/ab5d). Accessed 2026-09-18.
