It/Multiple Skins for a Single Model: Difference between revisions

From Valve Developer Community
< It
Jump to navigation Jump to search
(Skin multiple per un singolo modello)
 
m (Multipage removal)
 
(13 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[Category:Material System]][[Category:Modeling]][[Category:Tutorials]]
{{LanguageBar}}
[[Image:plasticcrate01.jpg|frame|center|{723x111px|1 modello, 5 skins]]In alcuni casi può essere d’aiuto per un mapper scegliere differenti skin per un modello. E’ più facile aggiungere al tuo modello diverse varietà di skin senza creare un modello completamente nuovo.
[[File:plasticcrate01.jpg|frame|center|{723x111px|1 modello, 5 skins]]In alcuni casi può essere d’aiuto per un mapper scegliere differenti skin per un modello. E’ più facile aggiungere al tuo modello diverse varietà di skin senza creare un modello completamente nuovo.


Il vantaggio di avere diverse skin per un unico modello invece di compilare differenti modelli è:
Il vantaggio di avere diverse skin per un unico modello invece di compilare differenti modelli è:
* più facile da trovare tramite un’overview
* più facile da trovare tramite un overview
* occupa meno spazio su disco
* occupa meno spazio su disco
* il processo è più veloce piuttosto che compilare ogni singolo modello
* il processo è più veloce piuttosto che compilare ogni singolo modello con una skin differente
{{clr}}
__TOC__
__TOC__
<br style="clear:both">
{{clr}}
== Esempio Base di Una Skin Sostituta ==
== Esempio base di una skin sostituta ==


Questo esempio dispone sia della skin on che della skin off, una differente skin per ogni situazione renderà migliore l’aspetto del modello.
Questo esempio dispone sia della skin on che della skin off, una differente skin per ogni situazione renderà migliore l’aspetto del modello.
Line 24: Line 25:
$sequence idle "mylamp.smd" fps 1
$sequence idle "mylamp.smd" fps 1
$collisionmodel "mylamp_phys.smd"</pre>
$collisionmodel "mylamp_phys.smd"</pre>
[[Image:lampon_lampoff.jpg|frame|Qui  sono state usate due skin per far apparire il modello con la luce accesa "on" o con la luce spenta "off".]]
[[File:lampon_lampoff.jpg|frame|Qui  sono state usate due skin per far apparire il modello con la luce accesa "on" o con la luce spenta "off".]]
{{note:it|<code>$texturegroup</code> necessita di essere preceduto da <code>$body</code>.}}
{{Note|<code>$texturegroup</code> necessita di essere preceduto da <code>$body</code>.}}


Definisci le tue differenti texture tra <code>$texturegroup skinfamilies {</code> e <code>}</code>.}. Il nome della prima texture (in questo caso "lampon") necessita di somigliare al  nome della texture che hai usato nel tuo modello (Se non sei sicuro, apri il file  [[SMD | .smd]] con un [[text editor]], e nel [[SMD file format#Triangle block | Blocco dei triangoli]] troverai il nome). Altrimenti <code>studiomdl.exe</code> non saprà con quale sostituirla.
Definisci le tue differenti texture tra <code>$texturegroup skinfamilies {</code> e <code>}</code>.}. Il nome della prima texture (in questo caso "lampon") necessita di somigliare al  nome della texture che hai usato nel tuo modello (Se non sei sicuro, apri il file  {{L|SMD|.smd}} con un {{L|text editor}}, e nel [[SMD file format#Triangle block | Blocco dei triangoli]] troverai il nome). Altrimenti <code>studiomdl.exe</code> non saprà con quale sostituirla.


In the following lines you can define the new textures between <code>{</code> and <code>}</code> that will be rendered instead of the original one.<br style="clear:both">
In the following lines you can define the new textures between <code>{</code> and <code>}</code> that will be rendered instead of the original one.{{clr}}


== Creare Molteplici Combinazioni Di Skin ==
== Creare differenti combinazioni di skin ==


In alcune circostanze potrai decidere di dividere  le texture per il tuo modello in molti altri materiali. Ciò consente di avere molteplici combinazioni al contrario di tanti diversi modelli. Se, per esempio, stai cercando di creare un modello che abbia due stili ma con tre colori di lampadine, dovresti creare queste combinazioni sotto <code>$texturegroup</code>.   
In alcune circostanze potrai decidere di dividere  le texture per il tuo modello in molti altri materiali. Ciò consente di avere molteplici combinazioni al contrario di tanti diversi modelli. Se, per esempio, stai cercando di creare un modello che abbia due stili ma con tre colori di lampadine, dovresti creare queste combinazioni sotto <code>$texturegroup</code>.   
Line 50: Line 51:




== Definizioni Generali ==
== Definizioni generali ==


Qui ci sono le definizioni generali per riferimento, se dovete usare parecchie skins:
Qui ci sono le definizioni generali per riferimento, se dovete usare parecchie skins:
Line 62: Line 63:
  }
  }


== Ulteriori Informazioni ==
== Ulteriori informazioni ==


* I modelli traslucidi emetteranno solo l’ombra della prima skin
* I modelli traslucidi emetteranno solo l’ombra della prima skin


Con l’uso di $shadowlod dovresti riuscire ad aggirare il problema.
Con l’uso di $shadowlod dovresti riuscire ad aggirare il problema.
{{ACategory|Material System}}{{ACategory|Modeling}}{{ACategory|Tutorials}}

Latest revision as of 08:26, 12 July 2024

English (en)Italiano (it)Translate (Translate)
1 modello, 5 skins

In alcuni casi può essere d’aiuto per un mapper scegliere differenti skin per un modello. E’ più facile aggiungere al tuo modello diverse varietà di skin senza creare un modello completamente nuovo.

Il vantaggio di avere diverse skin per un unico modello invece di compilare differenti modelli è:

  • più facile da trovare tramite un overview
  • occupa meno spazio su disco
  • il processo è più veloce piuttosto che compilare ogni singolo modello con una skin differente

Esempio base di una skin sostituta

Questo esempio dispone sia della skin on che della skin off, una differente skin per ogni situazione renderà migliore l’aspetto del modello.

$modelname mymodelfolder/mylamp.mdl
$cdmaterials modeltextures/mytexturefolder
$surfaceprop metal
$staticprop
$body studio "mylamp.smd"
$texturegroup skinfamilies
{
	{ "lampon"  }
	{ "lampoff" }
}
$sequence idle "mylamp.smd" fps 1
$collisionmodel "mylamp_phys.smd"
Qui sono state usate due skin per far apparire il modello con la luce accesa "on" o con la luce spenta "off".
Note.pngNota:$texturegroup necessita di essere preceduto da $body.

Definisci le tue differenti texture tra $texturegroup skinfamilies { e }.}. Il nome della prima texture (in questo caso "lampon") necessita di somigliare al nome della texture che hai usato nel tuo modello (Se non sei sicuro, apri il file .smd(en) con un text editor(en), e nel Blocco dei triangoli troverai il nome). Altrimenti studiomdl.exe non saprà con quale sostituirla.

In the following lines you can define the new textures between { and } that will be rendered instead of the original one.

Creare differenti combinazioni di skin

In alcune circostanze potrai decidere di dividere le texture per il tuo modello in molti altri materiali. Ciò consente di avere molteplici combinazioni al contrario di tanti diversi modelli. Se, per esempio, stai cercando di creare un modello che abbia due stili ma con tre colori di lampadine, dovresti creare queste combinazioni sotto $texturegroup.

$texturegroup skinfamilies
{
	{ "lampnew"   , "lightbulbred"   }
	{ "lampnew"   , "lightbulbgreen" }
	{ "lampnew"   , "lightbulbblue"  }
	{ "lamprusty" , "lightbulbred"   }
	{ "lamprusty" , "lightbulbgreen" }
	{ "lamprusty" , "lightbulbblue"  }
}

Ancora una volta assicurati che il tuo modello utilizzi i nomi dei materiali nella prima linea.

Come puoi vedere, creare lo schema delle combinazioni delle skin porta diversi vantaggi, tuttavia, usare molteplici materiali sullo stesso modello crea un significante cambio di performance, perciò questa tecnica dovrebbe essere usata spesso!


Definizioni generali

Qui ci sono le definizioni generali per riferimento, se dovete usare parecchie skins:

$texturegroup skinfamilies
{
	{ "original1"  , "original2"  , ... , "originalX"  }
	{ "replace1_1" , "replace1_2" , ... , "replace1_X" }
	{ ...          , ...          , ... , ...          }
	{ "replaceX_1" , "replaceX_2" , ... , "replaceX_X" }
}

Ulteriori informazioni

  • I modelli traslucidi emetteranno solo l’ombra della prima skin

Con l’uso di $shadowlod dovresti riuscire ad aggirare il problema.