A simulated drawing of the numbers 0 to 9; With a debug view overlaid showing the current rendergraph. The rendergraph shows each renderpass as a card, with connections showing images or buffers as dependencies.
(Art) platform adapters can now have an optional .configure({...}) method to customize platform-specific behaviors. To ensure future portability of your artwork (between different art platforms), calls to this method should be done from outside the artwork, i.e. via an additional <script> in the HTML wrapper.
Of the provided platform adapters, so far only the Layer adapter supports any options, but I'm also working on a new one for my website which will require other options and there are more use cases for which this will come in handy without adding any complexity to the overall system...
I have discovered another non-trivial rectangle partition into scaled copies of itself, with aspect ratio the fourth root of 2 (first picture). I've not found on-line any mention of it. Of course swapping rectangle positions more similar partitions can be made. In the next two figures two of the non-periodic tilings which can be derived from those partitions. As this rectangle is closer to a square than the others I know with this property, it is more suited to do a tiling where the amount of splitting depends on the distance of the tiles to the center of the canvas (last picture). I have changed the code which computes colours so that they can be chosen more precisely and not by a single equation. #geometry#tiling#mathart#algorithmicArt#AbstractArt#Mathematics
The previous demo made me dig deeper into dithering algorithms. It's something I should have done years ago, as I've been using simple random dithering now and then, and I hadn't even thought of gamma correction. One algorithm in particular caught my eye: Riemersma dithering, which uses the Hilbert curve. Compared to the usual matrices for error diffusion, the curve approach seemed easier to implement in some ways, as it has fewer edge issues.
More interestingly, it struck a chord with my earlier experiments with space-filling curves in image processing. So it was a kind of familiar territory, but it also seemed esoteric enough that I could imagine making some new discoveries. For example, play with other plane-filling curves besides the Hilbert.
The first image uses the boustrophedon curve, which makes the vertical wave patterns I recall from a number of non-dithering demos. The second curve is what I call the diagstrophedon, a diagonal zig-zag starting from the top left corner, and I think its wavy artefacts make a nice match for Venus's hair.
Then in image 3 we have Hilbert, which doesn't seem to make any particular artefacts, and I guess that's a good thing for dithering. Finally 4 uses the Peano curve, which makes some fun wiggles in light areas.