Thoughts on constructing blue noise (or similar) with the required self-similar properties #19
runevision
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Could surface-stable fractal dithering be changed to work with a blue noise pattern?
This post is to expand on what the FAQ says about this topic.
Some people have suggested using blue noise for the dithering pattern. But it is not straightforward to construct a blue noise pattern which is self-similar in a way that conforms to the second surface-stable constraint.
If we use only a single tiled square of blue noise pattern, it would require the dots in each quadrant of the pattern to perfectly line up with dots in the full pattern, when scaled up to cover the same area as the full pattern.
See this diagram for a better overview of what I mean:
Possible approaches
There are various ideas that can easily surface when thinking about how to solve this.
Using repulsive forces, but having "big points" and "small points" linked up while doing it. Though keep in mind the goal is not only compatible "small points" and "big points", but also every step along the way, when removing 75% of the dots little by little.
Or starting with an existing blue noise distribution, but for each "big point" move it slightly to line up with the closest "small point". This has recursive consequences though, as each "big point" is also a "small point" itself.
The challenge is not coming up with broad ideas that could potentially form part of a solution. That's not too hard, but the devil is in the details. The real challenge is finding a solution that actually fully works rather than being just a half-baked idea.
So far I've only had half-baked ideas myself. It would be interesting if others will manage to construct a tiled blue-noise pattern with the required properties.
Related research
On a side note, some people have pointed to the paper "Recursive Wang Tiles for Real-Time Blue Noise" by Johannes Kopf et al (paper and video). While the paper describes their technique making use of self-similar blue noise patterns, the practical demonstration in the video shows dots fading both in and out while zooming in, so while I do not fully understand their technique in detail, it does not seem to conform to the second surface-stable constraint mentioned in the FAQ under the question "What exactly is meant by surface-stable?".
What about just combining regular blue noise (or similar) at multiple scales, basically lerping between them?
Lerping between multiple scaled versions of a dot pattern which does not have the required self-similar properties will result in an effect which doesn't fit the second constraint in my definition of surface-stable:
When zooming in not only adds more dots but also removed a few dots along the way (or vice versa for zooming out) then it gives a kind of "crawling ants" effect, where my eyes at least sense a kind of movement in the dots which is distracting and doesn't feel stable. This is why I emphasize the surface-stable constraints, and the self-similar properties of point distributions needed to keep the effect surface-stable.
That said, experiments and implementations that don't live up to the surface-stable constraints can still be interesting, and possibly fitting for certain visual styles. You can see some of them in this page with implementations and experiments by others.
All reactions