Step five - make a body

Minule jsem po opravě mapování a "bakingu" budoucích textur vpodstatě uzavřel čtvrtý krok (step four) a už se pomalu, i když s mírným zpožděním, mohu začít věnovat samotnému exportu. K tomu ale musím udělat ještě jednu moc důležitou věc - přiřadit každému objektu odpovídající materiál přesně podle požadavků grafického engine hry. Na ten se samozřejmě váže i příslušná textura, ale pro potřeby exportu se jí nyní nemusíme zabývat - to se pořeší až v INI souborech.
Začnu s největším a nejsložitějším objektem e_body. Ten ještě samozřejmě není ve své konečné podobě, protože se během modelování a mapování ukázalo vhodnější dělit objekt na menší části, s kterými se líp pracuje a taky z důvodu, že z obdobných dílů budu ještě sestavovat i_body. Navíc každé takové součásti mohu velmi jednoduše přiřadit materiál (pro e_body to je "external").
Možnosti jsou vlastně jen dvě: external::carpaint (lesklý kovový povrch) a external::tire (matné povrchy včetně plastů). Aby to ale nebylo až zas tak jednoduché, může být každému materiálu přiděleno několik různých shaderů, které dále rozšíří naše možnosti. Jestliže materiály definují vlastnosti povrchu modelu obecně (barva textury, lesk, průhlednost), tak shadery popisují povrch konkrétněji (míra zrcadlení, svítivost povrchu, průsvitnost, atd.) Já pro zjednodušení používám jen tři, o kterých alespoň něco vím: CarColor, CarTire a CarTextureNoDirt. Jejich různým použitím se budu snažit docílit reálného vzhledu karoserie, shader NoDirt pak použiji pro vnitřní plochy, které se za jízdy neznečišťují.
Pro odlišení různých shaderů na stejném materiálu se výborně hodí ID tagy, které se zadávají v kartě vlastností materiálu (doporučuji 0 - CarColor, 1 - CarTire a 2 - CarTextureNoDirt) a přiřazují se k odděleným plochám objektů (úroveň polygonů).
Zde ale musím upozornit na jeden problém a to je ten, že s takto upravenými objekty už by se nemělo manipulovat mimo model (slučování, export) protože tím mi Zm2 přidělené ID tagy zase sloučí zpět. A protože hodlám model přenášet z tohoto pracovního souboru na Car template, budu si muset nechat ID tagy až na potom...
Ještě zde pro pořádek vypíšu všechny dostupné materiály pro e_body, jak se objeví po exportu v INI souboru:
FaceBlock0_Material=external::carpaint
FaceBlock0_Shader=CarPaint (lak karoserie - postupně se na něj aplikuje ještě scrape a dirt)
FaceBlock1_Material=external::tire
FaceBlock1_Shader=CarTire (ostatní povrchy, po exportu budou pravděpodobně už ušpiněné)
FaceBlock2_Material=external::tire
FaceBlock2_Shader=CarTextureNoDirt (a tyhle budou čisté - vnitřek auta)
FaceBlock3_Material=external dynamic::carpaint
FaceBlock3_Shader=CarPaint (zde použito pouze pro blinkry, ale zvládlo by se to i s "tire no dirt")
Někdy je celkem oříšek rozhodnout se pro správný shader, ale ještě je tu metoda "pokus - omyl", která to většinou vyřeší.
A jseme slučovat (Attach - nástroje). Pokud se v tom nechceme ztratit, mějme na paměti, že výsledný objekt získá jméno podle toho, na který jsme při slučování klikli naposled.
Tak e_body bychom měli a příště se budeme věnovat ostatním "povinným" objektům a materiálům. A nebo ne, proč si nezkusit rovnou kontrolní export?

Komentáře