101010.pl is one of the many independent Mastodon servers you can use to participate in the fediverse.
101010.pl czyli najstarszy polski serwer Mastodon. Posiadamy wpisy do 2048 znaków.

Server stats:

508
active users

#algorithmicart

1 post1 participant0 posts today

Finding all regions defined by a set of pseudorandom circles. Here, 8 input circles gave 37 output regions.

Python using pyclipper for 2d predicates & matplotlib for display. The (probably inefficient and maybe wrong) algorithm for ensuring all regions are found by me using trial and error.

pssst don't tell anyone but the circles are actually just 360-gons.

#ReleaseMonday — New version (v0.27.0) of thi.ng/genart-api, a platform-independent extensible API for browser-based computational/algorithmic/generative art projects:

This version features an overhaul of the platform provided PRNG (pseudo-random number generator) handling and makes it easier to create multiple PRNGs for artworks which require/desire them...

Related section in the README:
github.com/thi-ng/genart-api/b

Also, just as a reminder, the project has:

- no external dependencies
- adapters for 3 art platforms (EditArt, fxhash, Layer)
- 6 example projects
- testing/dev sandbox with two parameter editors
- WebAssembly bindings & demo (currently for #Zig only)

Happy coding! :)

thi.ng/genart-apithi.ng/genart-api

Testing the Gosper curve in my variable iteration halftoning setup. So far I've only used the Hilbert curve this way, and things get a bit coarser with the Gosper, so it was harder to find images that make nice results. So here we are with the old Venus again.

The number of points multiplies by 4 for Hilbert and 7 for Gosper on each step, so the latter has to get by with fewer iterations for a sensible resolution. Here we have 6 iterations for 6 grey levels.

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.

More #Actiniaria progress: Added a soft global constraint to create more of a (macro)organism feel w/ a sense of belonging and fuzzy boundary. Also slowly updating the behavior/relationship matrix between the six different types now, to create varying temporary alliances...

(Note: Sadly Firefox doesn't respect the Rec2020 color profile in the video, please download or use Chrome or Safari for viewing...)

Found some time last night to implement multi-behaviors and I'm very excited about where this is going... 😍 The video shows 6 different types interacting with (and avoiding) each other. Next step is to vary the behavior matrix over time, causing changing alliances and breakup behaviors...

See #Actiniaria for more context...

(Note: Sadly Firefox doesn't respect the Rec2020 color profile in the video, please download or use Chrome or Safari for viewing...)

Today it's already 3 weeks since the opening of "The Story Never Ends" exhibition at ZKM Karlsruhe, showcasing around 100 works by 75 artists from the museum's collection of 12,000 artworks, one of the largest and most important media art collections in the world (since the 1950s).

Due to the stress of the recent weeks, I've completely missed posting more pictures of my piece on display there (De/Frag, 2021). It's a custom site-specific version which will keep changing/evolving non-stop for the next 5 months (until the end of the show in late September). The pictures attached are by Clara Runge, the curator of the show. Thank you! 🙏🤩

zkm.de/en/2025/04/the-story-th

A plea: If you happen to go to ZKM and get to see the piece, please do take & post some pictures — I'm very keen to see snapshots over time (so far I've only had it running for a few weeks, but never for months on end...)

More info about the piece and images also here in this thread:
mastodon.thi.ng/@toxi/11424504

Similar to my #LinearMemory piece from last year (check the hashtag for references), these current #Actiniaria explorations make me fully appreciate all the research, efforts and supporting hardware behind the DCI-P3 & Rec.2020 color spaces. The intensity (and subtlety) of some colors & combinations are just stunning (to me), and I don't mean this in any ableist way (just enjoying whilst I still can!)...

Also still amazed that something like this runs at a smooth 60fps @ 2160x2160 UHD resolution on a mobile device with a just Snapdragon 2 chipset... As part of my advisory role @ day job, over the past few months I've been tasked with optimizing artworks for almost a dozen generative/algorithmic artists, often achieving 2-4x framerate improvements... Very much feeling a longer blog post re: code craft vs code art coming up, hoping to connect them more...

"To understand a program you must become both the machine and the program." — Alan Perlis

(Note: Sadly Firefox does not seem to respect the Rec2020 color profile in the video, please download or use Chrome or Safari for viewing...)

Work in progress...

Finally finding some time to continue working on my earlier thi.ng/boids experiments, now also using WebGL instancing and floating point render textures for super-smooth blending/trails to create aesthetics reminiscent of sea anemones...

(Update: I've decided on the beautiful-sounding and fitting #Actiniaria as project title...)

(Note: Sadly Firefox does not seem to respect the Rec2020 color profile in the video, please use Chrome or Safari for viewing...)