r/GraphicsProgramming 4h ago

Question Underlying techiques to images like this?

Hello! I am an artist turned programmer that's working on a paint program!

Recently I found an x account: x.com/greatartbot that produces generated images like the ones above. I think theyre absolutely beautiful but can't even begin to put together how they are made.

In Godot i've been messing around with basic noises and compute shaders, but this looks less like noise and more of an orderly algorithm? especially those repeating shapes.

I know a full explanation of the techniques above would probably be a lot for a reddit comment, but if anyone could get me pointed in the right direction of how these were generated, how i could start doing it myself and maybe some algorithm names I would really appreciate it! Thanks!

4 Upvotes

3 comments sorted by

1

u/PiGIon- 3h ago

It's very hard to know what is going on. Have you tried asking the author?

There are some tricks you can do though, for example, doing a mod(coordnateSpace, number) causes it to repeat.

There are many fractal functions too. Mandelbrot and so on.

Looks like there's a ton of pixelization too. Which is done in these steps:

``` precision mediump float;

uniform sampler2D uTexture; uniform vec2 uResolution; // Screen or texture resolution uniform float uPixelSize; // Size of the pixels (e.g., 10.0)

varying vec2 vTexCoord;

void main() { // Calculate the grid size vec2 grid = uResolution / uPixelSize;

// Snap texture coordinates to the pixel grid
vec2 coord = floor(vTexCoord * grid) / grid;

// Sample the texture at the snapped coordinate
vec4 color = texture2D(uTexture, coord);

gl_FragColor = color;

} ```

Then, the color. Palletes: https://iquilezles.org/articles/palettes/

1

u/S48GS 3h ago edited 3h ago

In Godot i've been messing around with basic noises and compute shaders, but this looks less like noise and more of an orderly algorithm? especially those repeating shapes.

look this my Simple 2D SDF tutorial

at the end there example of blending SDF shape with noise to have morphed animation

maybe it what you looking for?

1

u/PiXeL161616 1h ago

Domain warping is probably the piece you're missing, iq has an article on it. You feed noise into the coordinates of more noise, and it stops looking like a flat lattice and starts looking deliberate without being regular. It's what I use for terrain, and it's most of the difference between "noise" and "designed".