Effetto plasma

Facendo una media dei grigi ottenuti con onde verticali, orizzontali e inclinate è possibile ottenere configurazioni meno ripetitive.

Potendo modificare tono, saturazione e brillantezza [vedi colorMode(HSB)] è possibile ottenere una "palette" con variazioni di tonalità cromatiche a partire da un solo valore, ad esempio con: color(c,255-c,255).

// height=200 lines=auto
function setup() {
    createCanvas( 200, 200 );
    colorMode( HSB, 255 );
}

function draw() {

    for (let px=0; px<width; ++px) {
        let x = px*0.04;
        let s1 = sin(x);                           // onde verticali

        for (let py=0; py<height; ++py) {
            let y = py*0.04;
            let s2 = sin(y);                     // onde orizzontali
            let s3 = sin((x+y+frameCount/10) / 2); // onde inclinate

            let s = ( s1 + s2 + s3 ) / 3;              // media onde

            let c = s * 128 + 128; // parametro cromatico da 0 a 255
            set( px, py, color( c, 255-c, 255 ) );
        }
    }
    updatePixels();
}