Home / Xpresso / Xpresso Anonymous / Luci


Controllare le luci con Xpresso

Usare Xpresso per la tua illuminazione può essere un grande aiuto se si hanno un grande numero di luci che devono essere controllate. Lo scopo di questo esercizio è di creare un corridoio con un determinato numero di luci controllate dalla distanza che queste hanno da un oggetto che si muove lungo il corridoio. Pensa ad una stanza nella quale si vuole automaticamente accendere le luci mentre si sta camminando. Si possono accendere semplicemente le luci e permettere che il corridoio non rimanga mai al buio.Ci sono come al solito molti modi, verranno mostrati due di loro. Il primo è creare un setup Xpresso per ogni luce che controlli la luminosità delle stesse dipendenti dalla distanza dall'oggetto. Il secondo è creare un solo setup che controlli tutte le luci. Entrambi lavorano nello stesso modo, il differenza principale è in come si accede alle luci. Il primo setup può essere creato portabile in modo da riusarlo facilmente, mentre il secondo è più facile da modificare. Cominciamo creando un setup con il primo metodo, più tardi vedremo il secondo secondo.


scena base

Crea un tag di espressione Xpresso sulla prima luce e trascina la luce stessa e la Sfera nel editor di Xpresso. Avremo bisogno della posizione globale di ambedue per determinare la loro distanza. La distanza o può essere calcolata sottraendo posizioni e convertendo il vettore risultante ad un valore reale, (Info) o usando il nodo distanza. Nel nostro esempio useremo il nodo distanza.

Il setup dovrebbe assomigliare a questo:

Dobbiamo ora mappare la luminosità in base alla distanza. Per avere un'idea del valore di cui stiamo parlando crea un nodo Risultato e collegalo all'output del nodo distanza. Per avere l'aggiornamento del valore si deve eseguire il Refresh dal menu Xpresso->Calcola.
Movete la sfera lungo l'asse z per testare la scena.

Se non si cambia la posizione X e Y della sfera la distanza di circa 140 unità sarà la minima distanza che darà luogo alla luminosità massima. Ora sposta la sfera lungo Z fino in prossimità della luce. La distanza di circa 330 unità determina la minore luminosità.
Non volendo una luce buia setteremo I valori da 20% a 100% (0.2 - 1.0). Per convertire il valore (Info) da 330/140 a 20%/100% si può utilizzare un nodo Funzione o Gamma Mappatore. Useremo un Gamma Mappatore, perché più preciso. Rimpiazzate il nodo Risultato con un Gamma Mappatore. Avremmo bisogno di un secondo nodo Luce per controllare la luminosità. Copiarlo nella Gestione Oggetti e posizionarlo vicino al Gamma Mappatore. Creare un collegamento dalla porta output del Gamma Mappatore al input della Luce.
Abilitare l'immobilizza sopra/sotto del gamma mappatore (Info) . Abilitare l'opzione Inverti per invertire i valori. Non useremo l'opzione che disattiveremo. Digitare i valori dei parametri nelle zone appropriate.

Ora vedremo come lavora la luce (scena) . Creare un'animazione che sposta la sfera lungo il corridoio per verificare il setup (filmato ).

Copiare questo setup sulle altre luci. Dovremmo modificare il riferimento del nodo dell'oggetto luce. Il tag è settato su light1 copiandolo questo non cambierà. La soluzione è usare il riferimento Relativo. Seleziona nodi della luce e cambia il tipo di riferimento.
D'ora in pi questi nodi hanno come riferimento l'oggetto a cui il tag è assegnato. Se il tag viene assegnato ad un oggetto che non ha le porte di riferimento queste verranno identificate come indefinito. Un oggetto cubo non ha un valore di Luminosità.
Possiamo creare delle copie del tag Xpresso per tutte le altre luci usando Ctrl+drag sui tags. (scena) (filmato)

La situazione che abbiamo creato ha alcuni svantaggi. Se volete cambiare la distanza o la luminosità dovrete farlo separatamente per ogni tag Xpresso o dovrete sostituire i tag. Un primo passo per rendere più facile questo è permettere accesso ai valori necessari di Xpresso tramite uno dei metodi mostrati qui . Questo vi permetterà di selezionare più luci (quando si usano gli User Data) o i tag (porte XGruppo) e modificarle tutte simultaneamente. Tuttavia si è collegati ad un tag Xpresso per ogni luce. (scena)
Per evitare questo utilizzeremo un interazioni per ripetere la stessa operazione su ogni luce. In questo caso sono usate due interazioni. La gerarchia e Lista Oggetto Interazione. La gerarchia vi permette di interagire su tutti i figli delle nostre luci nulle, che potrebbero porre un problema se utilizzate una gerarchia più complessa per il vostro setup di illuminazione. In questo caso la scelta migliore è la Lista di Oggetto che interagisce attraverso tutti gli oggetti che inserite la lista.
Cancellare tutti i tag Xpresso salvo quello su Light1, quindi crea un nodo lista di oggetto. Poiché utilizzeremo il setup sull'oggetto nullo impostate il riferimento dei nodi oggetto su assoluto. Spostate ora il tag da Light1 alla luce nulla.

Ora colleghiamo la porta di output della istanza del nodo Lista di Oggetto alle porte input dell'oggetto dei due nodi. In questo modo il riferimento sarà modificato in tutti gli oggetti nella lista di oggetti in successione. Per fare in modo che il setup sia più facile da utilizzare tutti i valori devono essere disponibili nelle proprietà del tag Xpresso. (Info) . Potete modificare l'ordine di porte trascinando il nome della porta. Questo rende più facile mantenere il setup pulito. (scena)

Potete modificare facilmente questo setup in modo che invece di luci che diventano più intense ci siano sportelli che aprono e chiudono automaticamente. Animare solo la rotazione degli sportelli invece della luminosità delle luci.


Ricordare che c'è sempre più di una soluzione a un problema. Provare a trovare più soluzione ad un problema. Questo vi aiuterà quando dovrete produrre qualcosa in tempo limitato o all'interno di limitazioni.

Torna a Xpresso Anonymous