Sara Tesan – Generative Landscape

/* OBIETTIVO VISIVO:
Un paesaggio di mare osservato dall’interno di una stanza, attraverso una finestra. La scena mostra alcune isolette all’orizzonte e il mare in primo piano. C’è una transizione graduale tra giorno e notte: il cielo cambia colore con lo spostamento del mouse e fa apparire/scomparire alcuni elementi (i gabbiani).

SCOMPOSIZIONE LOGICA:

  1. Background: Ho creato lo sfondo della stanza usando un colore uniforme (per la parete) e un rettangolo nella parte inferiore per rappresentare il pavimento.
  2. Finestra: Ho realizzato il contorno della finestra per dare profondità alla scena. La stessa funzione viene riutilizzata in scala ridotta per disegnare lo sfondo interno (il cielo), creando l’effetto di una finestra con spessore.
  3. Cielo: Utilizzando la funzione map() in relazione a mouseX, ho creato una transizione graduale del colore del cielo da chiaro a scuro, simulando il passaggio da giorno a notte.
  4. Sole/Luna: Ho disegnato un’ellisse che segue il movimento orizzontale del mouse, cambiando colore di conseguenza. Ho usato constrain() per fare in modo che rimanga entro la finestra.
  5. Mare e isole: Il mare è rappresentato con un rettangolo, mentre le isole sono costruite con curveVertex().
  6. Onde: Ho utilizzato una funzione riutilizzabile per disegnare le onde, posizionandole tramite un array di coordinate e un ciclo for per evitare ripetizioni.
  7. Gabbiani: Riutilizzo la stessa funzione delle onde variando posizione e colore. Un’istruzione if permette di mostrarli solo quando il cielo è chiaro, facendoli scomparire quando diventa scuro.

Commenti

Lascia un commento