I found some time to try something out.

I found some time to try something out. Result:

X/Y wobble + bilinear filter

The wobbling is just a pixelwise shifting - appearing a bit rough yet but anyway not so bad for a quick test.
http://www.youtube.com/watch?v=j2-8JzYCISI

Ok this is a can of worms, but I’ll open it: in computer graphics, often a simplex noise field is used to generate an XY offset. So instead of
Pixel = f(x,y)
they do this:
dx = noise1(x,y)
dy = noise2(x,y)
Pixel = f(x+dx,y+dy)
where noise1 and noise2 are usually just different small variations on the same parameters.

Example: if f(x,y) just returns a color from a particular place in a 2-D tile covered with stripes, then f(x+dx,y+dy) returns a marble-like texture. See http://www.connectedpixel.com/blog/texture/marble for examples, or google for “Perlin marble texture”.

Just more ideas to play with! love how deep you’re exploring here!

That´s a valuable hint for me! I thought about it, how to get rid of all nasty artefacts without blurring the result too much. These semi-chaotic dx and dy shifting sounds good.

Since half a year I have that “rotate a bitmap” thing on my to-do list. I´m still not able to use Dans gridmap class, but I make progress in understanding, what it does and how. Anyway I´m still struggeling with the problem, that the destination image has “holes” - missing pixels. It could be a solution to fill them with a simplex noise based blend of their neigbor pixels in order to avoid new Moire patterns…

Are you doing all this from a micro controller? Cause you are doing some cool stuff, but you will hit computational limits pretty quickly. And I know we all love FastLED around here, but I can’t help but think you could do amazing things with a computer (or even a Raspberry PI) driving the animation through something like a FaceCandy instead.

With processing https://processing.org/ or hardware accelerated WebGL shaders http://glslsandbox.com/ you would have access to way more performance as well as more friendly programming languages for this sort of visualization.

Then again, maybe squeezing a lot out of a tiny micro controller is part of the fun :slight_smile:

Yes, everything I show here is realtime calculated on a 96 MHz Teensy 3.1 :slight_smile:

As always @Stefan_Petrick , well done. It looks like a Jello cake while it wiggles :slight_smile: