Pixel come funzione di tempo, indice, x e y
Martin Kleppe, tixy, minimalist creative coding environment, 2020
Il sistema permette di indicare solo il calcolo necessario a determinare la dimensione del "pixel" (risultato da 0.0 a 1.0) e il suo colore (rosso se il valore è negativo).
I parametri vengono ricavati di volta in volta e passati per ogni pixel:
t
: scorrere del tempo in secondi;i
: indice del pixel da 0 (alto sinistra) a 255 (basso destra) riga per riga;x
ey
: coordinate del pixel da 0 a 15.
Con p5.js il "sistema" potrebbe essere strutturato più o meno in questo modo:
function tixy(t, i, x, y) {
return Math.sin(y/8+t); // o sin(y/8+t) in p5.js
}
// ...
function draw() {
let i = 0;
for (let y = 0; y < 16; y++) {
for (let x = 0; x < 16; x++, i++) {
let t = (frameCount-1) / 60;
let val = tixy(t, i, x, y);
// ricava posizione, colore e diametro del cerchio
// imposta colore (bianco o rosso) e disegna cerchio
}
}
}
Lo sketch completo si può trovare in questo codice ricostruito per il web editor e con tutti gli esempi di colcolo attivabili nella funzione tixy()
.
Martin Kleppe ha previsto anche la possibilità di generare GIF animate inserendo una delle funzioni provate con il tool principale e la durata dell'animazione.
Noah Doersing ha creato una variante che permette di tenere conto anche della coordinata z e quindi di generare configurazioni 3D: tixyz.