Evoluce tvorby CG textur

1 month ago by in Jak začít s VFX Tagged: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Tvorba textur pro 3D modely není, co bývala. Filmy i hry vyžadují vznik stále větších CG světů, stále dokonalejší vzhled digitálních assetů a mají stále větší nároky na rychlost jejich produkce. Logickou odpovědí na takové tendence je zdokonalování programů a automatizace repetitivních postupů. Ve výsledku jde vždy především o to, aby se co nejvíc ušetřil čas na to, na čem skutečně záleží – kreativitu.

I z toho důvodu jsme v poslední době svědky vzniku nových nástrojů, které vnášejí nové a nápaditější postupy do oblasti tvorby digitálních textur. Začínající tvůrce se v těch všech možnostech může téměř ztrácet. Od toho tu je naštěstí dnešní článek – abyste se zorientovali nejen v jednotlivých technikách ale i v současných trendech.


2D texturing

Bývaly doby, kdy jediným efektivním způsobem, jak vytvořit realistickou texturu pro 3D model, bylo vytvořit UV layout, exportovat ho do 2D malovacího softwaruv 99% případů se jednalo o Photoshop – a tam začít skládat textury. To probíhalo různými způsoby, nejčastěji tvůrce nejdříve vytvořil nějaký barevný základ, buď pomocí tileable fotografické textury nebo ruční malbou štětci. Často se pak jemným brushem pokusil zatemnit místa v záhybech geometrie, čímž vytvořil ambient occlusion pass (definice ve slovníčku). Přes tento základ začal nalínat různé další texturové vrstvy vystupující na povrch materiálu v určitých místech (např rez zasahující do nepoškozeného kovu).

Vše dokončil přidáním detailů jako nápisy, rytiny, škrábance, fleky atd. Tento postup bylo posléze nutné ručně opakovat pro každý jednotlivý materiál modelu a tvůrce mohl výsledek vidět teprve po uložení jednotlivých texture map (diffuse, specular, bump, reflection atd.) a jejich nahrání do 3D programu. Až zde si je zobrazil na svém modelu ve 3D viewportu.

Z minulého času v předchozím odstavci by se mohlo zdát, že tenhle postup je už dávno minulostí. Opak je pravdou. Spousta grafiků stále používá Photoshop jako hlavní nástroj pro texturování své 3D tvorby. Raději než využívat zástup novějších a pohodlnějších postupů, zůstávají u časem prověřené metody malování na 2D UV regiony, protože jim dává velkou kreativní svobodu, zajeté PS postupy a navíc si nemusí dokupovat další nástroje.

Je pozoruhodné, že jednotlivé postupy texturování nemají tendenci zastarávat. Spíše se děje to, že každý tvůrce si časem najde svůj vlastní workflow, který mu vyhovuje. Je pravda, že u klasického 2D texture paintingu zůstávají především CG matadoři, kteří se ho kdysi naučili a jsou v něm dnes tak efektivní, že nemají potřebu měnit. Pravdou je ale i to, že se jedná o zdaleka nejpomalejší a nejméně přitažlivý postup.

Ať už vám tenhle workflow sedne nebo ne, faktem zůstává, že jádro technologie se nemění. Takže ať už budete pracovat jakkoliv, ve výsledku z vašeho texturování stejně vzejdou 2D textury vzniklé na základě 2D UV layoutů. Rozhodně tedy není od věci si 2D texturing vyzkoušet a pochopit ho, protože pak vám bude o mnoho jasnější vše, co se děje v následujících technikách.

 

3D texturing

Tvorba textur ve 2D má jistou vlastnost, řekněme nevýhodu. Když tvůrce maluje textury, nevidí je aplikované přímo na 3D modelu. Vidí, jak fungují na ploše UV layoutu, ale jak skutečně vypadají po aplikaci, když okolo modelu může rotovat, zjistí až po exportu. Odpovědí na tento problém byl samozřejmě vznik 3D texturingu, tedy malby textur přímo na 3D objekt ve viewportu aplikace.

Od chvíle, co grafické karty osobních počítačů začaly být trochu výkonnější, většina programů jako Maya, 3DSMax či Softimage obsahovala nástroje na aplikaci barev a textur přímo na povrch modelů. Skutečný boom však přišel až okolo roku 2007, kdy se na trh vyřítily nástroje jako Zbrush, Mudbox, 3DCoat a další. Najednou začal být 3D texturing zázračně jednoduchý – výkonnější počítače umožnily realtime práci, dokonalejší vykreslování postupně umožnilo náhled finálního výsledku, bez nutnosti neustálého renderování. Jednotlivé aplikace přišly nejenom s postupy, jak ručně malovat textury, ale i jak ve viewportu aplikovat fotky, masky atd. Bylo to zkrátka jako by se 2D možnosti Photoshopu přesunuly do 3D.

Tato metoda začala být tak úspěšná, že ji postupně převzaly snad všechny softwary dostupné na trhu. Klasické programy jako Maya, 3DSMax, Modo, Blender a další jednak notně zdokonalily své built-in tooly, ve většině případů pak také nabídly přímé propojení třeba právě se ZBrushem či Mudboxem. To vše bylo navíc úzce spojeno se sculptingem, tedy modelováním drobných povrchových detailů.

 

Mari

Jedním z problémů tohoto 3D postupu nicméně bylo rozlišení. Kvalitní textury většinou potřebují velké objemy pixelů, pohybující se v dimenzích 4000 x 4000 až 8000 x 8000 px (někdy i víc). Ne všechny počítače byly před rokem 2010 schopné utáhnout takové objemy dat. V tu chvíli vstoupil do hry software vyvinutý firmou The Foundry, vzniklý pro potřeby produkce filmu Avatar Jeho jméno je Mari.

Mari ve své podstatě nabízí to samé, co ostatní aplikace – mínus sculpting. Co však tenhle program činí tak výjimečným je jeho výkonná architektura. Ta totiž zvládá pohodlně pracovat s desítkami tisíc textur a malovat v neomezených pixel rozlišeních. Právě proto se Mari téměř okamžitě stalo průmyslovým standardem, který dodnes nikdo nenahradil – alespoň ne na poli ultradetailních 3D textur pro filmová plátna. A navíc má free non-commercial verzi k vyzkoušení:

Zrovna když si ale všichni mysleli, že už v téhle oblasti není co nového vymyslet, objevily se nástroje, které možnosti 3D texturingu zásadním způsobem posunuly.

 

Quixel Suite

Jak už jsem popisoval v odstavci o 2D texturingu, existují postupy, které se při tvorbě textur neustále opakují. Kupříkladu špinění modelu, přidávání škrábanců , definování vzhledu textur na základě rozdílných materiálů a v neposlední řadě jednotvárné generování různých texture map a jejich ukládání na disk. Přitom se často jednalo o zcela mechanické úkoly, které by zvládla i cvičená opice. Anebo ještě lépe – nějaký šikovný software.

Tím softwarem se v roce 2013 stal Quixel Suite  s nástroji nDo a dDo. Švedské společnosti se podařilo využít úžasné 3D kapacity Photoshopu a vybudovat na jeho základě nástroj, který dokázal vzít vstupní data vytvořeného modelu (UV layout, Normal mapu a barevné mapy definující různé materiály) a na jejich základě rychle a pohodlně vygenerovat základovou texturu pro CELÝ model se všemi jeho částmi. V tomto případě myslím jedno video vydá za tisíc slov:

Pomocí nástroje nDo můžete na svém modelu rychle a pohodlně tvořit kvalitní normal mapy případně upravovat ty, které jste už zhotovili v jiném softwaru (ZBrush, Mudbox, Blender…). V dalším kroku pak tyto normály necháte prohnat nástrojem dDo, který právě podle nich pozná, kde se nacházejí různé záhyby, díry a povrchové nerovnosti. Jediné, co od vás v tuhle chvíli dDo chce, je definovat, která část modelu má mít jaký materiál. Následně si z velké databanky vyberete, jak konkrétně má vypadat kůže, kov, dřevo, malované povrchy atd. Počkáte, až vám nástroj vygeneruje základ textury, a pak můžete (ale nemusíte) výsledek ručně upravovat. Jak vidíte z traileru, už samotný vygenerovaný základ vypadá dost dobře.

Dvě poznámky předtím, než si Quixel koupíte s myšlenkou, že udělá vše za vás. Zaprvé: Quixel není magie, a přestože vám ušetří spoustu času, kreativní element pořád vyžaduje velkou dávku ruční práce a znalostí na poli texture tvorby. Začátečníci by se tedy rozhodně měli nejdříve naučit 2D a 3D základy a teprve pak skákat do nDo a dDo.  Zadruhé: Celá suita je přizpůsobena tvorbě textur pro herní průmysl, který přeci jenom stále vyžaduje menší kvalitu než průmysl filmový. Do budoucna se toto nejspíš změní, zatím ale na poli filmových VFX pořád vede Mari.

Substance Painter

Denní chléb texturáře: Kouknout, kde jsou rohy a spoje 3D objektu. Představit si, kudy asi proudí vzduch, jak působí gravitace, které části modelu jsou nejnáchylnější k zašpinění a které naopak nejvíc dostanou na frak, takže potřebují škrábance. A pak se pokusit vytvořit vše tak, aby to vypadalo realisticky. Jenže… co kdyby to šlo nechat generovat přesně podle fyzikálních pravidel?

Substance Painter od Allegorithmic je nejnovější bomba na poli 3D texturingu. Jedná se o standalone tool, který přináší podobné čas šetřící postupy jako Quixel, navrch však přidává ještě jednu revoluční novinku. Jedná se právě o automatické malování povrchových nedokonalostí – substance painting. A opět vás nyní odkážu na video:

Dobré ne? To samozřejmě není vše. Substance Painter a jeho přidružený nástroj Substance Designer pro tvorbu materiálů si zakládají na PBR postupech (Physical-Based Rendering). To znamená, že všechny jeho materiály a textury jsou generované dle úzkostlivě zdokumentovaných pravidel šíření světla v reálném světě (proto vypadají tak dobře). Tvorba navíc probíhá ve vrstvách, non-destructive metodou pomocí nodů, takže veškeré úpravy se dají kdykoliv vrátit, deaktivovat a znovu zviditelnit.

V samotné tvorbě je program podobný Quixelu – je třeba definovat materiál, nechat nástroj pracovat a pak ručně doladit výsledek. A stejně jako v případě nDo a dDo, je lepší, když má člověk předchozí zkušenosti s tvorbou textur klasičtějšími cestami.

Podobně jako Quixel, i Substance Painter je zatím využíván především herními společnostmi (a jeho nástroje jsou přímo napojeny na enginy jako Unreal, Unity, Lumberyard atd), jeho autoři však neúnavně pracují na tom, aby byl atraktivní i pro průmysl filmový . A mám-li si troufnout předvídat budoucnost, řekl bych, že toho co nevidět i docílí…

Podobné články

Freelance filmař, trikař a grafik. Cinematic Director ve Warhorse Studios. Redaktor bývalého časopisu Pixel a tvůrce VFXcz.

  • Jen bych dodal, že Mari původně vyvinuli ve Wetě a dohodli se s Foundry na převzetí. Podobně Nuke je původně interní tool Digital Domain, který Foundry převzali.

    Viz
    https://en.wikipedia.org/wiki/The_Foundry_Visionmongers
    v sekci Products např.

  • Petr Hoffmann

    Díky Martine, další pěkný článek 🙂 Já osobně jsem dost rychle skočil na SP a jsem nadšen. Pro juniora generalistu výborný, jednoduchý a levný nástroj.

    • Díky! :- Mně už se hřeje na disku a co nevidět si na něm chci vyzkoušte nějaký projekt 🙂