<- Texturing - Seconda parte

Projection e support
In XSI ogni volta che viene applicata una texture 2d bisogna definire il suo metodo di proiezione sull'oggetto, usando il texture projection e il texture support avete il pieno controllo per il posizionamento della texture.
Una volta definito il projection in viewport apparirà il support (rappresentazione grafica di come la texture verrà proiettata sulla superficie, wire verde scuro. Di default ogni texture support è "attaccato" all'oggetto, in modo tale che gli oggetti animati non perdano la propria proiection durante il movimento), potete anche generare le projection prima di applicare tutte le texture. Il texture projection determina la corrispondenza tra i pixel della texture e i punti sulla superficie. Potete trasformare una projection e potete aggiungere altre projection (adiacenti o sovrapposte) al support. Scegliere il giusto tipo di proiezione è una fase importante del texturing, spesso il projection è conforme alla forma dell'oggetto, altre volte bisogna fare degli aggiustamenti. Una volta applicata la texture secondo un determinato tipo di proiezione probabilmente dovrete eseguire degli aggiustamenti delle coordinate (UV) nel texture editor.
Vari tipi di projection sono anche disponibili come subprojection, che servono e ri-proiettare la texture su una selezione di poligoni usando un differente metodo di proiezione.

Planar projection -> è come se la texture venisse proiettata sulla faccia di un cubo, l'orientamento del piano di proiezione è definito attraverso una coppia di assi cartesiani (XY â€" XZ â€" YZ).
text23

text24

text25

Cilindrical projection -> la texture è proiettata dalla superficie laterale di un cilindro
text26

Spherical projection -> la texture è mappata su una sfera
text27

Lollipop projection -> è un altro tipo di proiezione sferica
text28

UV projection -> l'UV mapping è il metodo di mappaggio + versatile per gli oggetti NURBS e Mesh. La texture viene adattata sulla superficie come una "pelle di gomma", i punti dell'oggetto corrispondono esattamente a specifiche coordinate nella texture. Anche quando deformate l'oggetto la texture seguirà la geometria dell'oggetto.
text29

Camera projection -> è un metodo di texturing piuttosto semplice, la texture viene proiettata dalla camera sull'oggetto (esattamente come un proiettore). Può essere utile per proiettare il background della scena.

Cubic projection -> la texture viene proiettata in maniera planare o sferica (face projection) dalle facce di un cubo su i poligoni dell'oggetto in base alla direzione delle loro normali
text30

text31

text32

Spatial projection -> è una proiezione tridimensionale (UVW) che ha come origine il centro dell'oggetto (di default) o il centro della scena. Si usa di solito con texture procedurali.

Unique UVs projection -> applica la texture in uno di questi 2 metodi:
1) Individual polygon packing: assegna le coordinate UVs di un poligono a una precisa porzione di texture.
2) Angle grouping: si applica dopo aver deciso il tipo di proiezione, specificando una tolleranza angolare verranno creati dei gruppi di poligoni adiacenti (island), le coordinate di ogni island verranno assegnate a una porzione di texture.

Contour stretch UVs projection (solo per poligoni)
Permette di proiettare una texture su un gruppo di poligoni per "stiramento" in base alla analisi dei 4 angoli della selezione. Questo metodo di proiezione non ha il corrispettivo support, quindi non è possibile applicare trasformazioni. Può essere utile per texturizzare un terreno in mesh o ad esempio l'etichetta di una bottiglia.

Operator Stack
Quando create una texture projection su un oggetto nell'operator stack comparirà il relativo "projection's texture operator".
text33

Gli operatori aggiunti in seguito (ad esempio un twist) avranno effetto anche sul projection's texture operator.
Gli strumenti "swim", "stick" e "reproject" si trovano nella Render toolbar "Modify -> Projection" e servono a riposizionare (in modi differenti) il projection's texture operator all'interno dell'operator stack.
1) Swim: controlla se la proiezione sia posizionata all'interno della zona "modelling" dell'operator stack, in questo caso provvede a spostarla nella posizione + alta dell'operator stack in modo tale che la texture venga applicata dopo tutte le deformazioni (incluso l'envelopping e lo shape animation, utile quando si usa il camera projection).
2) Stick: controlla se la proiezione si trova nella situazione precedente (swimming) e la porta al top della zona modelling, cioè la texture è applicata dopo le deformazioni ma prima dell'envelopping.
3) Reproject: controlla la posizione della proiezione all'interno della regione modelling e la porta sopra a tutte le deformazioni successive. La texture sarà quindi applicata dopo le deformazioni, ma prima dell'envelopping. Se la proiezione è posizionata in "swimming" (primo caso) il reproject non ha effetto.
Tutti e 3 gli strumenti sono applicabili a uno oggetto o a un singolo projection texture (dal view "explorer). All'interno dell'operator stack è possibile spostare gli operatori anche per trascinamento.

Editare i texture projection
Nella tollbar Render "Modify -> projection" trovate 2 tool:
1) Inspect current UV per aprire la finestra di editing del projection corrente dell'oggetto selezionato (o oggetti selezionati)
2) Inspect all UV per aprire la finestra di editing di tutti i projection dell'oggetto selezionato (o oggetti selezionati)
Potete accedere a queste finestre anche con il tasto "edit" che trovate vicino alle liste dei texture projection (ad esempio nel render tree o nel property editor dello image shader).
Qui potete applicare delle trasformazioni al texture projection (scala, sposta, ruota) che potete applicare anche dalla 3d view in maniera intuitiva e pratica premendo il tasto "j".
Nella finestra di editing (tab texture projection) c'è l'opzione "fit sub component UVs to image", molto comoda per scalare e spostare in automatico il texture projection in base a un gruppo di poligoni selezionati.
text34

Una volta applicate le varie trasformazioni avete la possibilità di "azzerare" tutti i valori e memorizzare solamente le coordinate UVs definitive della texture attraverso il tool "freezing texture", questo tool è molto utile soprattutto a chi sviluppa videogame che ha la necessità di esportare solamente le coordinate definitive della texture. Una volta applicato il freezing in XSI avrete la possibilità di fare ulteriori modifiche alle coordinate UVs attraverso il texture editor.
Le opzioni di wrap definiscono in quali direzioni la ripetizione della texture avrà effetto (U â€"V â€" W)

Attaching an object to a texture projection
Con questa opzione (Toolbar Render -> Get -> Property -> Texture Projection -> Connect to projection) è possibile utilizzare un unico texture projection, precedentemente creato per un oggetto, per un altro oggetto. L'importante perché abbia effetto è che il support sia sufficientemente grande da inglobare gli oggetti. Agli oggetti che condividono il texture projection si possono applicare anche texture differenti.
In maniera simile dallo stesso menù è possibile anche duplicare e connettere un support pre-esistente a un altro oggetto o connettere un texture projection pre-esistente a un gruppo di oggetti, a un ramo (branch) o a una gerarchia (Constain support to bounding box)

Texture support
Anche al texture support potete applicare delle trasformazioni (scala, sposta, ruota con i relativi tasti "x", "v" e "c") che avranno poi effetto sulla texture applicata. In viewport la linea verde scuro rappresenta il tipo di projection scelto, la linea rossa la coordinata U del support e quella e la verde chiara la coordinata V.
È possibile creare dei texture support a un oggetto (gruppo, branch, gerarchia) prima di applicare le texture semplicemente applicando un texture projection (verrà automaticamente generato il texture support) ed è comodo per poter poi applicare diverse texture per ogni support (con il comando "connect to support").

Texturing, quarta parte ->

---
Questo articolo è stato importato automaticamente dal forum il 31/lug/2014
Per vedere il post originale e/o i commenti sul forum prima di quella data clicca qui