tgfrerer boosted:
Karsten Schmidttoxi@mastodon.thi.ng
2026-01-29

Simulated Cyanotype Chemigrams...

Lately I've been revisiting my old fluid sim toolset which started out as part of my toxiclibs Java libraries (2007/8, based on Jos Stam's research, also previously mentioned in this thread[1]), then ported & expanded it for #Houdini in 2016, then ported again to TypeScript/GLSL (via thi.ng/shader-ast in 2019) and been messing around with it on & off ever since... Fluidsims are just so mesmerizing to work/play with and can be taken into so many interesting directions!

I also always loved the watercolor cover designs by Gabriella Holmström for The Memoir[2] series on Hypnus Records and wanted to create similar abstract structures/constellation, albeit with simulated fluids... Stills/snapshots, but showing traces of their creation process.

Attached are a few variations of this system (already collected again hundreds which I have to still curate). Each piece is starting with just 4 drops in always the exact same locations (diamond-shaped layout in the center), but each variation is evolving differently due to randomized concentrations and simulation coefficients, therefore resulting in many different diffusion behaviors and outcomes... Some of the pieces which exhibit more viscous fingering[3] almost remind me of Hokusai's Great Wave[4]...

I will be offering sets of unique prints/cards of these via my shop soon. Also still researching feasibility of integrating interactively created variations in the shop (also for other artworks/collections of mine).

[1] mastodon.thi.ng/@toxi/11580242
[2] youtube.com/@Hypnusrecords/vid, for example: youtube.com/watch?v=efdfYJODiuA
[3] en.wikipedia.org/wiki/Saffman%
[4] en.wikipedia.org/wiki/The_Grea

#FluidSim #Simulation #Art #GenerativeArt #AbstractArt #NoAI #ThingUmbrella #TypeScript #ShaderAST

A 3x3 grid of complex abstract shapes created via fluid simulations as described in the post. The images have a monochromatic blue tint (the underlying simulation is just producing a grayscale image)
tgfrerertgfrerer
2026-01-28
tgfrerertgfrerer
2026-01-27
tgfrerertgfrerer
2026-01-27
tgfrerertgfrerer
2026-01-26
tgfrerertgfrerer
2026-01-23

farbspiel 6 (still)

tgfrerertgfrerer
2026-01-23

farbspiel / 5 (animated, realtime, 240hz)

tgfrerertgfrerer
2026-01-23
tgfrerertgfrerer
2026-01-23

@lritter

i assume this requires some reflection to expose the structure of objects to the data store, right?

is this the part that the domain specific language is playing?

tgfrerertgfrerer
2026-01-23

@lritter amazing! i’ll be curious to find out how you approach it :)

tgfrerertgfrerer
2026-01-23

@lritter one of the things i’m quite happy with is how Island forwards callbacks - their addresses are kept persistent with some “clever” assembly code: poniesandlight.co.uk/reflect/b

tgfrerertgfrerer
2026-01-23

@lritter i don’t do anything too clever … objects that live on the heap don’t care if the algorithms operating on them change, so i keep longer lived objects there;

if a struct of such an object on the heap gets modified the program will likely crash, but that’s not the point for me for hot-reloading; it’s mostly to be able to change algorithms on the fly and experiment that way;

compiling from scratch is very fast anyway because of the structure of the code base :)

tgfrerertgfrerer
2026-01-23

@lritter it’s my c/c++ vulkan hotreloading r&d renderer :) github.com/tgfrerer/island

tgfrerertgfrerer
2026-01-22
tgfrerertgfrerer
2026-01-22

Farbspiel

tgfrerertgfrerer
2026-01-21

Strata

Made with Island.

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst