Francesco Bocchi – Generative Landscape

Obiettivo visivo

Lo sketch rappresenta un villaggio collinare incorniciato da elementi naturali. L’obiettivo visivo è simulare un ciclo continuo e fluido tra il giorno e la notte. Di giorno, la scena è illuminata da un sole a tre livelli di colore e ravvivata da fiori in primo piano che ruotano su se stessi. Al click del mouse, inizia una transizione per cui il sole tramonta scomparendo dietro l’orizzonte, i colori dell’intero paesaggio si scuriscono gradualmente assumendo toni notturni, la rotazione dei fiori rallenta fino a fermarsi, una luna sorge prendendo il posto del sole e, nel cielo scuro, appaiono le stelle.

Scomposizione logica

Il lavoro è stato strutturato lavorando per livelli sovrapposti, procedendo rigorosamente dagli elementi più lontani (sul fondo) a quelli più vicini (in primo piano):

  1. Il cielo, il cui colore è gestito da una variabile dinamica, e l’array di stelle.
  2. Il sole e la luna, disegnati con ellissi sovrapposte. La loro posizione Y è vincolata al valore della transizione.
  3. La collina verde scuro sullo sfondo e l’albero stilizzato.
  4. La casa verde acqua in alto a sinistra e la casa rosa sulla destra.
  5. La collina centrale (che copre la base degli elementi posteriori) e la collina verde chiaro in basso a destra.
  6. Il blocco di case in primo piano, composto dalla casa arancione a sinistra e la casa verde acqua in basso a destra.
  7. I quattro fiori animati, realizzati tramite la funzione personalizzata disegnaFiore() che sfrutta le trasformazioni di matrice (push, pop, translate, rotate) per farli girare sul proprio asse.

Uso AI

Per la realizzazione di questo sketch ho utilizzato Gemini in modo mirato per risolvere alcuni snodi logici, nello specifico per:

  1. Strutturare correttamente la randomizzazione iniziale delle stelle all’interno della funzione setup().
  2. Comprendere il funzionamento dell’interpolazione dei colori tramite la funzione lerpColor() e legare i gradienti cromatici al movimento verticale del sole.

Uno dei prompt importanti che ho usato:

“Come posso creare una variabile che cambia piano piano da A a B quando premo il mouse, e usarla per far scendere il sole e contemporaneamente cambiare i colori del cielo e delle case con una funzione?”

Commenti

Lascia un commento