Digital images are not drawings. It's much more accurate—and productive—to think of them as models. However, pixels and pixel-based animations are subject to the same algorithmic impulses as ink on paper. As much as the pixel is different in almost every way from the drawn mark, pixel-based formats support similar opportunities to transform reality, structure ambiguity, and leverage the formal potential of procedural logic.
The Curtain Wall
640
The Curtain Wall is conceived as one of a collection of elements of architecture that are each intertwined with their specific representational media. The Curtain Wall is generated with the help of a simulation that prioritizes appearance. Taken as a whole—which the viewer must do because Curtain Wall is smooth and contiguous with no noticeable seams—it is a contradiction. On one side it is read as firm and thick. On the other side it is flowing and thin, literally flapping in the wind. On this side, gravity wins. A frozen curtain is like a corpse. But as an animation, it comes alive.
The Curtain Wall in Section
640
The Curtain Wall is infinitely and infinitesimally thick—it relies on the disciplinary and historic ambiguity of poché.
Flawed Flood Fill: Periodic Fill Color
640
“Flood fill” refers to multiple variants of an algorithm (wikipedia: flood fill) for changing the color of pixels within contiguous area of like-colored existing pixel colors. Think paint bucket tool in Photoshop. In early computer graphics, the efficiency of operations that changed a few hundred pixel values was the paramount concern, and although a conceptually trivial procedural problem, flood fill algorithms bring elegance to the fore of discourse. However, that elegance is hidden within the process. How can that elegance itself manifest as image? Under normal circumstances, once the fill is complete, the algorithm is irrelevant, but if the algorithm is purposefully modified with a flaw the paradigm shifts from problem solving to artistic invention.
The tactics used to flaw the flood in this image involve, first, the irregular stepping from pixel to pixel. This allows the fill to cross over boundaries, and when coupled with a gradually changing fill color, patterns emerge that are dependent on, but distinct in geometry from, the bounds. This animation captures the macro implications of a micro adjustment to the position of a bounding line.
The flood fill algorithm and multiple flawing tactics are documents and further explored in the Computational Drawing Book.
Flawed Flood Fill Result in One Frame
“Flood fill” refers to multiple variants of an algorithm (wikipedia: flood fill) for changing the color of pixels within contiguous area of like-colored existing pixel colors. Think paint bucket tool in Photoshop. In early computer graphics, the efficiency of operations that changed a few hundred pixel values was the paramount concern, and although a conceptually trivial procedural problem, flood fill algorithms bring elegance to the fore of discourse. However, that elegance is hidden within the process. How can that elegance itself manifest as image? Under normal circumstances, once the fill is complete, the algorithm is irrelevant, but if the algorithm is purposefully modified with a flaw the paradigm shifts from problem solving to artistic invention.
The tactics used to flaw the flood in this image involve, first, the irregular stepping from pixel to pixel. This allows the fill to cross over boundaries, and when coupled with a gradually changing fill color, patterns emerge that are dependent on, but distinct in geometry from, the bounds.
The flood fill algorithm and multiple flawing tactics are documents and further explored in the Computational Drawing Book.
Flawed Flood Fill: Periodic Fill Color Within Grid
640
“Flood fill” refers to multiple variants of an algorithm (wikipedia: flood fill) for changing the color of pixels within contiguous area of like-colored existing pixel colors. Think paint bucket tool in Photoshop. In early computer graphics, the efficiency of operations that changed a few hundred pixel values was the paramount concern, and although a conceptually trivial procedural problem, flood fill algorithms bring elegance to the fore of discourse. However, that elegance is hidden within the process. How can that elegance itself manifest as image? Under normal circumstances, once the fill is complete, the algorithm is irrelevant, but if the algorithm is purposefully modified with a flaw the paradigm shifts from problem solving to artistic invention.
The tactics used to flaw the flood in this image involve, first, the irregular stepping from pixel to pixel. This allows the fill to cross over boundaries, and when coupled with a gradually changing fill color, patterns emerge that are dependent on, but distinct in geometry from, the bounds. This animation captures the macro implications of a micro adjustment to the position of a bounding line.
The flood fill algorithm and multiple flawing tactics are documents and further explored in the Computational Drawing Book.
Flood Fill Algorithm Reveal
640
“Flood fill” refers to multiple variants of an algorithm (wikipedia: flood fill) for changing the color of pixels within contiguous area of like-colored existing pixel colors. Think paint bucket tool in Photoshop. In early computer graphics, the efficiency of operations that changed a few hundred pixel values was the paramount concern, and although a conceptually trivial procedural problem, flood fill algorithms bring elegance to the fore of discourse. However, that elegance is hidden within the process. How can that elegance itself manifest as image? Under normal circumstances, once the fill is complete, the algorithm is irrelevant, but if the algorithm is purposefully modified with a flaw the paradigm shifts from problem solving to artistic invention.
The tactics used to flaw the flood in this animation involve a gradually changing fill color. As a result, patterns emerge that are dependent on, but distinct in geometry from, the bounds.
The flood fill algorithm and multiple flawing tactics are documents and further explored in the Computational Drawing Book.
Flood Fill Directionally-Biased Color
640
“Flood fill” refers to multiple variants of an algorithm (wikipedia: flood fill) for changing the color of pixels within contiguous area of like-colored existing pixel colors. Think paint bucket tool in Photoshop. In early computer graphics, the efficiency of operations that changed a few hundred pixel values was the paramount concern, and although a conceptually trivial procedural problem, flood fill algorithms bring elegance to the fore of discourse. However, that elegance is hidden within the process. How can that elegance itself manifest as image? Under normal circumstances, once the fill is complete, the algorithm is irrelevant, but if the algorithm is purposefully modified with a flaw the paradigm shifts from problem solving to artistic invention.
The tactic used to flaw the flood in this animation involves changing the fill color based on the direction moved since the last pixel checked. Four colors trace the target pixel’s movement up, down, left and right.
The flood fill algorithm and multiple flawing tactics are documents and further explored in the Computational Drawing Book.
Sorting Pixels in a Digital Scan of a Mesh Solid
640
Every digital image is a grid. This fact is both obvious and easy to ignore. But this structure affords opportunities for operations like sorting a series of pixels (in this case, rows) based on any color value (in this case, grayscale value). Sorting pixels through the use of custom-created software is willfully naive of the content represented in the image. This can yield strange effects when the content legible in the image deviates from a gridded order (as is the case in this line drawing).
Often, the partially sorted pixels (or in this case, the act of sorting) is more compelling than a completely sorted image.
Sorting Pixels in a Digital Scan of a Circle Drawing
640
Every digital image is a grid. This fact is both obvious and easy to ignore. But this structure affords opportunities for operations like sorting a series of pixels (columns, in this case) based on any color value (hue, in this case). Sorting pixels through the use of custom-created software is willfully naive of the content represented in the image. This can yield strange effects when the content legible in the image deviates from a gridded order (as is the case in this line drawing) or if the pixels are chromatically varied in local territories (as is the case with a noisy image or one that was purposefully dithered or optimized for compression).
Often, the partially sorted pixels (or in this case, the act of sorting) is more compelling than a completely sorted image.
Sorting Pixels in Both Axes of a Line Drawing
640
Every digital image is a grid. This fact is both obvious and easy to ignore. But this structure affords opportunities for operations like sorting a series of pixels (rows or columns) based on any color value (hue, saturation, value, or the amount of red, green or blue). Sorting pixels through the use of custom-created software is willfully naive of the content represented in the image. This can yield strange effects when the content legible in the image deviates from a gridded order (as is the case in this line drawing) or if the pixels are chromatically varied in local territories (as is the case with a noisy image like this one or one that was purposefully dithered or optimized for compression).
Often, the partially sorted pixels (or in this case, the act of sorting) is more compelling than a completely sorted image.
Sorting Pixels Based on Visual Reading of a Neutra VDL Studio and Residences Photo
640
Every digital image is a grid. This fact is both obvious and easy to ignore. But this structure affords opportunities for operations like sorting a series of pixels (in this case, rows) based on any color value (hue, saturation, value, or the amount of red, green or blue). Sorting pixels through the use of custom-created software is willfully naive of the content represented in the image. This can yield strange effects when the content legible in the image deviates from a gridded order (as is the case in this line drawing) or if the pixels are chromatically varied in local territories (as is the case with a noisy image or one that was purposefully dithered or optimized for compression).
Though this process works best when the content in the image and the algorithm operating on the image diverge, when outlines are imposed, selective readings of the original content are—slightly—preserved.
Sorting Pixels Based on Visual Reading of a Photo Through the Hollywood Sign Fence
640
Every digital image is a grid. This fact is both obvious and easy to ignore. But this structure affords opportunities for operations like sorting a series of pixels (in this case, rows and columns simultaneously) based on any color value (hue, saturation, value, or the amount of red, green or blue). Sorting pixels through the use of custom-created software is willfully naive of the content represented in the image. This can yield strange effects when the content legible in the image deviates from a gridded order (as is the case in this line drawing) or if the pixels are chromatically varied in local territories (as is the case with a noisy image or one that was purposefully dithered or optimized for compression).
Though this process works best when the content in the image and the algorithm operating on the image diverge, when outlines are imposed, selective readings of the original content are—slightly—preserved.
Sorting Pixels Based on Visual Reading of William Pereira's UCSD Library Photo
640
Every digital image is a grid. This fact is both obvious and easy to ignore. But this structure affords opportunities for operations like sorting a series of pixels (in this case, rows and columns simultaneously) based on any color value (hue, saturation, value, or the amount of red, green or blue). Sorting pixels through the use of custom-created software is willfully naive of the content represented in the image. This can yield strange effects when the content legible in the image deviates from a gridded order (as is the case in this line drawing) or if the pixels are chromatically varied in local territories (as is the case with a noisy image or one that was purposefully dithered or optimized for compression).
Though this process works best when the content in the image and the algorithm operating on the image diverge, when outlines are imposed, selective readings of the original content are—slightly—preserved.
Source simulation for storm drawing
640
This animation is a behind the scenes look into the simulation that generates the storm series of pen plotter drawings. In a sense this is a whole-world simulation, but with accurate real-world forces incorrectly applied. The space of the world is two-dimensional and corresponds to the extents of the image. To make the drawing the entire duration of each world’s existence is translated to marks. Gravity exists as a universal downward force in this world, but the force is variable, not constant. Although the behavior of particles is labeled to correspond to phenomena in our world, scalar distinctions are short-circuited and flaws are built in. Atoms are bound by springs and clouds formed by conditional if-then statements, for example.
Variable Slit Screen From a Car
640
Slit screen photography creates an image by scanning a thin column across a view. In digital terms, this technique involves working with a column of pixels often only one pixel wide. More specifically, custom code was created to parse, transform and reconstruct digital video. This iteration couples a sweeping slit screen with moving content—footage taken from a car. The width of the column, speed of the sweep, and the direction of the sweep are variable over time.