Jump to content
gurugugnola

Texturing

Recommended Posts

Come promesso dopo gli shader passo alle texture... anche questo è un argomento molto vasto e complesso, spero di riuscire a completare il tutto in breve tempo ^_^ intanto parto con una panoramica abbastanza generale...

TEXTURING

Per ottenere dei risultati realistici, oltre all'applicazione di material e shader, è necessario utilizzare delle texture che vanno a influire su ogni aspetto dell'oggetto da renderizzare (bump, reflection,trasparency…).

Le surface property di un oggetto geometrico definiscono la sua "apparenza" e sono determinate da una proiezione della texture e dalle texture applicate alla geometria. XSI permette l'utilizzo di 2 tipi di texture:

  • Image texture: file immagine applicate (o avvolte attorno) alla superficie dell'oggetto. Sono supportati tutti i tipi di file RGBA o RGB (pic, gif, tiff, psd…), delle .TIFF non è supportata da Mental Ray la compressione LWZ
  • Procedural texture: calcolate matematicamente secondo specifici algoritmi e solitamente simulano materiali "naturali" (legno, roccia, marmo…) e pattern, nella library di XSI sono presenti texture procedurali 3D e 2D. Le 2D vengono applicate come tutte le texture sulle superfici, mentre le 3D sono applicate al volume e possono ricreare delle strutture interne come potrebbero essere gli anelli del tronco di un albero.

Ogni volta che selezionate un'immagine da usare come texture viene creato un file "image source" e "un'istanza" dell'immagine chiamata "image clip". Da un unico "source file" possono essere create diverse image clip che potete modificare singolarmente. Ad esempio se state usando la stessa immagine (source) sia per il surface che per il bump, potrete applicare un blur all'immagine che state usando x il bump senza andare a modificare quella per il surface poiché sono 2 image clip differenti.

Ogni volta che applicate una texture verranno create le "texture projection" e le "texture supports".

text01.jpg

Una volta applicata la Texture projection verrà visualizzato nelle 3d views il cosiddetto "texture support" (wireframe verde scuro)

text02.jpg

Il projection e il support permetono il controllo preciso della pipeline del 2d texturing, il texture support controlla come una texture 2d viene applicata all'oggetto 3d mentre il projection annota dove la texture deve apparire sull'oggetto. A un singolo support possono corrispondere + projection.

Texture maps

Combinano le proprietà delle texture image e texture projection, sono usate nel "particle" e nel "hair simulation" applicate ai parametri mappabili (controllare l'emissione di particelle, colore dei capelli…) al posto di utilizzare un singolo valore. Di regola le texture map comunque non vengono usate per il texturing.

text03.jpg

Coordinate UV

Applicando un texture projecton a un oggetto si crea un set di coordinate (chiamate UV coordinates o semplicemente UVs) che controllano dove la texture corrisponderà alla superficie dell'oggetto.

Potete visualizzare e modificare le UVs attraverso il "Texture editor" dove sono rappresentate come "sample point", selezionandoli potete effettivamente selezionare le coordinate UV corrispondenti sul'oggetto

Texture operator

Quando create un texture projection su un oggetto verrà creato un "texture operator" che controlla dove il projection "va a leggere" nell'operator stack dell'oggetto. Ciò determina come appare la texture sulla superficie dell'oggetto, specialmente se l'oggetto viene deformato.

Nell'explorer il texture operator si trova sotto il nodo texture projection dell'oggetto (e non nell'operator stack dell'oggetto), posizionando la freccia del mouse sopra apparirà un tooltip con scritto dove il texture operator sarà letto nel "main operator stack". Potreste riposizionare il texture operator all'interno dell'operator stack per modificare la disposizione della texture nel momento in cui l'oggetto è deformato.

text04.jpg

Lavorare con texture shader e surface shader

Texture e surface shader combinati insieme definiscono solitamente l'apparenza dell'oggetto, i surface shader definiscono in particolare il colore base, la trasparenza, la rifrazione, la riflessione…

La texture applica un'immagine (o una texture procedurale) sulla superficie e non sostituisce il surface shader, ma è combinato a questo per aumentarne l'effetto.

Nell'esempio seguente la texture è applicata all'ambient e al diffuse del surface shader, i valori relativi allo specular sono settati nel property editor dello shader e non sono influenzati da texture.

In teoria potreste collegare la texture anche direttamente al surface input del material, ma in questo caso avreste meno controlli.

I texture e i surface shader hanno un output di tipo color che può interagire facilmente con la superficie dell'oggetto, nella maggior parte dei casi una texture è collegata all'ambient e al diffuse di un surface shader.

text05.jpg

Questo è anche il metodo "+ semplice" di utilizzare una texture.

Il metodo + facile per applicare una texture a un oggetto è usare il menù get -> texture menù nella toolbar Render. Questo comando applica in automatico un material, un surface shader e la texture scelta all'oggetto/i selezionato/i. In fondo al menù potete scegliere a quali input dello shader applicare la texture (ambient, diffuse, reflection, trasparency).

È possibile applicare texture per layer (texture layering), con questo processo si possono mixare + texture (una dopo l'altra) con un risultato "cumulativo" per costruire effetti complessi.

Per applicare una texture si può utilizzare anche il property editor dello shader cliccando con il tasto destro sulla connection icon corrispondente al parametro a cui si vuole applicare una delle texture presenti nel menù (con "more…" si accede al browser).

text06.jpg

Se la connection icon è rossa (o a delle piccole lettere <- a questo proposito vi consiglio la lettura dei tutorial sugli shader) c'è già uno shader collegato, scegliendo dal menù un nuovo shader sarà sostituito.

Un terzo metodo per applicare delle texture è il Render tree (premete il tasto "7") richiamando i vari shader dal menù nodes (o trascinandoli dalla shader toolbar – Menù View -> Toolbar -> Shader) e collegandoli assieme per costruire una struttura ad albero

text07.jpg

È possibile applicare una texture a un gruppo di poligoni, una volta selezionati i poligoni dal menù Get -> material assegnate un nuovo surface shader e dal menù Get -> texture una nuova texture.

text08.jpg

Per accedere ai Local Material si passa dall'explorer sotto il nodo "polygon Mesh -> Cluster -> Polygon".

text09.jpg

Per aggiungere delle texture a quella già applicata potete usare il menù "Modify -> Texture -> Add" dalla render toolbar, verrà aggiunto un nuovo texture layer e le texture verranno mescolate assieme (nel render tree le connection icon saranno contrassegnate da una "L" azzurra). Per ogni texture assegnate, quando necessario, potrete assegnare diversi metodi di proiezione.

text10.jpg

Ogni texture assegnata a un oggetto (o gruppo, o gerarchia) ha una serie di parametri per definire la posizione e la modalità di ripetizione.

La maggior parte delle texture possono essere ripetute (tiling), in maniera simmetrica o no, per creare un pattern, se la texture è "tilibile" non noterete le giunture su i bordi delle ripetizioni. Queste opzioni le trovate nel tab "advanced".

text11.jpg

Lavorando con texture 3D il tiling non sarà visibile in viewport (utilizzate il render region), ma potrete settare il tiling anche nell'asse Z.

Con l'opzione "texture repeats" potete definire quante volte ripetere la texture (nei 3 assi), ad esempio nell'immagine precedente è il repeat è stato settato a 3.

Nella toolbar render dal menù "Modify –> texture" è possibile accedere velocemente a tutte le texture applicate.

Dal property editor del texture shader è possibile salvare (o caricare) una texture e i suoi parametri come preset da riutilizzare in altri casi, attraverso i tasti Load/save in alto a destra.

Mixer shader

Per mixare 2 (o +) texture potete utilizzare un mixer shader (mixa anche colori, shader e immagini) assegnando a ogni texture il proprio peso e il metodo di mix. I Mixer shader possono essere usati in alternativa al "layer texturing"; a differenza di questo, che mixa le texture con i parametri dello shader, i mixer shader utilizzano il risultato del mix per settare il parametro.

I mixer shader sono meno flessibili dei layer, infatti con un solo comando potete spostare i vari layer mentre utilizzando un mixer shader per modificare l'ordine dovrete rifare i collegamenti.

Quando a un parametro viene assegnato un mixer shader potete controllare il weight dal color box e scegliere il metodo di miscela.

text12.jpg

Per comprendere come funzionano i vari metodi vi consiglio di mixare un'immagine e un gradient lineare dal bianco al nero.

Gradient shader

Con i gradient shader si possono creare numerosi effetti interessanti applicandoli ai parametri di altri shader, oltre che usarli come texture su una superficie. Ad esempio spesso vengono utilizzati per mixare 2 texture (gradient mixer shader).

text13.jpg

Il gradient mixer shader accetta uno scalar o vector input per controllare il tipo di gradiente, ad esempio in base alla distanza, alle coordinate vettoriali o come in questo caso in base all'incidenza.

text14.jpg

Texturing, seconda parte ->

post-3829-1174053536_thumb.jpg


Edited by gurugugnola

Share this post


Link to post
Share on other sites

grande x questa guida...volevo chiederti se potevi spiegare 1 po' più approfonditamente come funzionano i mixer xkè, quando li uso, non ho ancora capito come "dosare" la quantità delle texture e quindi, sono costretto a fare un blending tra due texture...ora aspetto un tutorial sull'unwrap, una delle poche cose che non ho capito leggendo il manuale....

Share this post


Link to post
Share on other sites
grande x questa guida...volevo chiederti se potevi spiegare 1 po' più approfonditamente come funzionano i mixer xkè, quando li uso, non ho ancora capito come "dosare" la quantità delle texture e quindi, sono costretto a fare un blending tra due texture...ora aspetto un tutorial sull'unwrap, una delle poche cose che non ho capito leggendo il manuale....

sono un pò di fretta, cmq... I metodi di mixaggio sono simili a quelli dei layer di photoshop (add, multiply, soft light...), per capire meglio ti conviene fare qualche prova con lo shader mix_2 color, che è il + semplice, in cui hai una texture (o colore) di base da mixare con l'altra (color1)... il livello di mixaggio (weight) lo dai attravrso il box color (Bianco/nero - Max/min)

Share this post


Link to post
Share on other sites

Alla fine di tutte le "Puntate" secondo me sarebbe una cosa ottima raccogliere tutto in un pdf facilmente stampabile, sta cominciando ad essere un lavoro della madonna :ph34r: Con un paio di sistematine verrebbe fuori un bel volumetto che potrebbe tranquillamente venire messo in vendita... guru prima o poi dobbiamo prendere e scrivere finalmente un manuale decente in italiano, io la butto lì ma come idea mi alletta sempre di più; noi due dobbiamo parlare di affari, qua! :P

La sezione materiali e shader è praticamente già pronta :w00t:

:TeapotBlinkRed:

Share this post


Link to post
Share on other sites
Alla fine di tutte le "Puntate" secondo me sarebbe una cosa ottima raccogliere tutto in un pdf facilmente stampabile, sta cominciando ad essere un lavoro della madonna :ph34r: Con un paio di sistematine verrebbe fuori un bel volumetto che potrebbe tranquillamente venire messo in vendita... guru prima o poi dobbiamo prendere e scrivere finalmente un manuale decente in italiano, io la butto lì ma come idea mi alletta sempre di più; noi due dobbiamo parlare di affari, qua! :P

La sezione materiali e shader è praticamente già pronta :w00t:

:TeapotBlinkRed:

Mi unisco all'idea di Pillus e spero di poter contribuire al più presto con un tutorial utile per XSI, se si continua di questo passo sarebbe veramente la prima guida italiana ( e fatta come si deve ) per questo magnifico software!

Share this post


Link to post
Share on other sites

L'idea non mi spiacerebbe, oltre che a una sistemata (e aggiunta) dei miei appunti ci vorrebbero anche dei tutorial (o videutorial) pratici, tipo degli esercizi per ogni argomento... cmq una guida in italiano è appena uscita, scritta da FabioW e pubblicata su lowpoly (non so quali argomenti siano stati trattati).

Cmq appena ho tempo (sono sotto esame ora) andrò avanti con il texturing e poi ho intenzione di studiare il lighting.

Share this post


Link to post
Share on other sites

Magari il primo di una serie di manuali sui principali programmi di 3d e in vendita qui nello shop :ph34r:

Con treddi.com che potrebbe diventare una sorta di GNOMON :ph34r::ph34r::ph34r: ...

Uhm....

:TeapotBlinkRed:

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...