mercoledì 9 novembre 2016

InViaggio: Cascata di Colori

InViaggio: Esplosione di Colori

La serie InViaggio tratta di piccoli programmi fatti mentre sono in treno

Obbiettivo: creare un generatore di diverse forme di vario colore in (0,0,0)


Progetto
Vogliamo avere un vettore statico di oggetti primitivi a cui assegnare un materiale da colorare successivamente. Dunque:



Gli oggetti da spawnare sono selezionabili nell'inspector:

Vogliamo ciclare tra tutti gli elementi del vettore alla pressione di qualsiasi tasto (sia della tastiera, che del mouse, o al tocco su iPhone/AndroidPhone). Dunque:
L'oggetto viene creato, ma in una posizione casuale! Centriamo l'oggetto appena creato in (0,0,0) e, allo scopo di farlo cadere nel vuoto, aggiungiamo un RigidBody alla quale applichiamo una forza in una direzione casuale:



Ora, vogliamo cambiare il colore all'oggetto appena creato. Ciò viene fatto aggiungendo un componente Renderer al tipo primitivo, assegnandogli un materiale e dandogli un colore casuale tramite l'apposita funzione contenuta in Random:
 (qui correggo una piccola distrazione: l'if che contiene l'indice và dentro la condizione di Input, non fuori!)



 L'unico problema è che gli oggetti così creati non vengono distrutti! Aggiungiamo un piccolo script che distrugge gli oggetti spawnati dopo pochi secondi:
ed aggiungiamo questa riga allo script precedente:
Risultato:
Voilà! Modificando leggermente lo script, è possibile far spawnare anche oggetti creati ad hoc.

Clicca qui per scaricare il materiale!