4.9.7.1        Dichiarare Texture Stratificate



Nel caso in cui noi volessimo utilizzare una texture stratificata su alcuni oggetti della nostra scena, è perfettamente possibile dichiarare una texture stratificata. Non ripeteremo la texture che abbiamo visto nel paragrafo precedente, ma il risultato finale dovrebbe essere qualcosa di questo genere.

#declare Metallo_Consumato =
texture { /* inserisci la texture di base qui... */ }
texture { /* le macchie di ruggine qui... */ }
texture { /* e naturalmente, le bruciature fuligginose qui */ }

POV-Ray non ha problemi nell'individuare il punto in cui terminano le texture di una dichiarazione, dato che le texture si susseguono l'una dopo l'altra senza oggetti o direttive nel mezzo. La texture stratificata che viene dichiarata sarà assunta continuare finché non si troverà qualcosa di diverso da una frase texture{...}. Quindi in questo modo un qualunque numero di strati può essere aggiunto alla dichiarazione di texture. Un'ultima cosa circa le texture stratificate. Qualunque texture stratificata usiamo, dichiarata o no, non dobbiamo dimenticare la frase texture{...} che la circonda. In texture convenzionali singole, una normale scorciatoia è quella di indicare solo il pigmento, o solo il pigmento e la finitura, o solo le normali, o qualunque altra cosa, senza racchiudere il tutto in una frase texture{...}. Questa scorciatoia non si estende alle texture stratificate. Noi, con POV-Ray possiamo stratificare intere texture ma non parti individuali di texture. Per esempio,

#declare Falsa_Texture =
texture { /* inserisci la texture base qui... */ }
pigment { Red filter .5 }
normal { bumps 1 }

non funzionerebbe. I pigmenti e le normali sono lì senza essere parte di una qualunque particolare texture. Entro un oggetto, con una singola texture, possiamo fare questo genere di cose, ma con texture stratificate otterremmo solo un messaggio di errore, sia che questa si trovi all'interno di un oggetto, sia che si trovi all'interno di una dichiarazione.