Předvánoční slevová akce Java týden
Využij předvánočních slev a získej od nás 20 % bodů zdarma! Více zde
Pouze tento týden sleva až 80 % na Java e-learning!

Úvod do procedurálních textur v Blender

Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem.
Vydávání, hosting a aktualizace umožňují jeho sponzoři.

Pomocí Blenderu můžeme vytvořit prakticky jakýkoliv objekt, jaký si jen zamaneme. Ale mít samotný model nám nestačí k tomu, aby objekt vypadal podle našich představ. Jak jste z nadpisu jistě poznali, dnes se budeme bavit o texturování.

Textura

Textura je obrázek, který se nanáší na objekt (mesh). Textura samotná nemá žádné fyzikální vlastnosti, jedná se pouze o digitální obrázek. Aby textura vypadala realisticky, nebo jakkoli budeme chtít, musíme na objekt aplikovat materiál, který následovně obarvíme texturou. Pokud je řeč o texturování, jsou tu dva možné přístupy:

  • Vložit do programu obrázek (nebo jej namalovat)
  • Definovat svou texturu pomocí matematických vzorečků

Srovnání obou přístupů texturování

Vložený obrázek (image) Procedurální textura
Repetitivní Náhodně generovaná
Načítá se ze souborů (rychlejší výpočet) Počítá se podle vzorce (pomalejší výpočet)
Vždy je nutné u meshe provést UV mapping UV mapping je volitelný
Dlouhý proces pro úpravy Úpravy jsou rychlé
Vhodnější na složité tvary (např. list stromu) Vhodnější na opakující se strukturu (např. kámen)

Stažení modelu

O teorii bychom se mohli bavit dlouho, ale myslím že užitečnější je učit se praxí. Stáhněte si archiv níže pod článkem (scena_pro_texturovani.zip). Archiv obsahuje model webkamery, na kterém si texturování dnes budeme zkoušet. Rozbalte jej, otevřete si Blender a v něm soubor scena_pro_texturovani.blend.

Otevření blend souboru v Blender

Okno v levém dolním rohu slouží k renderovanému náhledu. V okně s 3D pohledem je vždy nahoře čtveřice tlačítek zobrazující typ náhledu. Real-time (RT) render je poslední symbol, na něj klikněte.

Pohledy – RT

Na dolní polovině obrazovky vidíte v okně dva rámečky s názvy Principled BSDF a Material Output. Těmto rámečkům se říká nody (česky uzly). Tyto nody se vám vytvoří vždy, když vytvoříte nový materiál.

  • Node Material Output tu reprezentuje všechny objekty, které na sobě mají stejný materiál.
  • Principled BSDF je nastavení fyzikálních vlastností, které bude materiál mít. Označujeme jej jako Shader, na který se aplikuje textura.

Je dobré nejdříve umět vyrobit reálně vypadající materiál, než se pustíme do vytváření materiálů stylizovaných.

Tato scéna má již vše připravené, takže budete pouze upravovat nody v dolním okně.

Měď

Ze začátku si zkusíme vytvořit lesklý kov, například měď. Vysvětlíme si co jednotlivé vlastnosti materiálu znamenají a jak je zadáme.

Base Color

Base Color určuje barvu. Pomocí žluté tečky se dá napojit barva na texturu. Pro jednolitý kov je však textura zbytečná. Kliknutím na barvu se nám ukáže barevná paletka, klikneme v ní do záložky hex a zadáme barvu #95542D.

Metallic

Posuvník Metallic určuje, jestli je materiál kov nebo ne. Hodnota 0 znamená, že není kovový a 1 znamená, že kovový je.

Spectacular

Další hodnota, která nás zajímá, je Spectacular, tedy odrazivost světla.

Odrazivost IOR (Index of Refraction)

Tento krok je trochu složitější, musíme nejdříve zjistit, jaký má materiál (měď) index odrazivosti. Tuto hodnotu najdete, když do vyhledávače zadáte IOR list. Měď má IOR od 1.1 až po 2.43. Hodnota IOR ovšem není rovnou Blender hodnota Spectacular. IOR musíme přepočítat pomocí vzorce:

specular=((ior−1) / (ior+1))² / 0.08*

Pro dnešní účely si zvolíme IOR 2.2, v přepočtu na Spectacular hodnota vyjde zhruba 1.757. Klikneme do řádku Spectacular a nastavíme na tento údaj.

Roughness

Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!

Toto nastavení určuje jak moc je povrch "hrubý". Jednoduše řečeno, čím je hodnota vyšší, tím méně je odražený obraz zřetelný. Tzn. pokud by byl údaj na nule, výsledná textura by byla velmi podobná zrcadlu.

Pro dnes nechme měď trochu zašlou a zvolme hodnotu 0.3. Nahoře v okně s nody máme uprostřed název textury. Jestli se chceme ve své práci vyznat, doporučuji si smysluplně materiály pojmenovávat. Dílo si uložte.

Určitě byste rádi viděli nejen náhled nebo zrnitý render. Stisknutím F12 se nám vyrenderuje obrázek v novém okně. Ještě jednou připomínám, je dobrý zvyk si práci vždy před renderem uložit. V případě, že by vám program náhodou spadl, nepřijdete o žádný postup, jako by se mohlo stát při obnově z autosave.

Výsledek by měl být takovýto:

Materiál mědi na modelu webkamery v Blender

Dobrá práce, zvládli jste první úroveň! :)

Texturování

Se samotným shaderem toho více nezvládneme, zde přichází na řadu texturování. Texturou můžeme ovlivnit jakoukoliv hodnotu shaderu. Vložíme tedy node noise texture pomocí:

Shift + A -> Texture -> Noise Texture

Noise texture považuji za tu nejdůležitější, jde s ní udělat spousta věcí. Tento node totiž generuje šum a to jak barevný (Color) tak černobílý (Fac). Výstup Noise Texture připojte k shaderu namísto Base color. spojování nodů

Pro texturu je třeba přidat vektor a možnost snadné a rychlé úpravy:

Shift + A -> Vector -> Mapping

Shift + A -> Input -> Texture Coordinate

Generated v Texture Coordinate propojíme s vstupním vektorem Mappingu. Výstupní vektor Mappingu pak propojíme s vektorem Noise texture.

Normála je velmi podstatná část texturování. Určuje, jak se bude světlo od objektu odrážet, pomocí ní můžeme vytvořit iluzi prostoru na ploše. Mezi Base color a Noise texture vložíme node Bump:

Shift + A -> Vector -> Bump

Vložením přímo na linku spojovaných se nám mezi ně připne. Z Noise texture vede momentálně linka do sekce normal, tu přesuneme na sekci Height. Nyní vidíme bump mapu, kterou použijeme jako normálovou. Výstup z bump propojíme se shaderem. Strength v bump nastavíme na hodnotu mezi 00.1. Postup je demonstrován na následující animaci:

Normály

Měděnka

Materiál mědi máme, dále si zkusíte nekovový materiál. Ano, měděnka, i napříč tomu, že se tvoří oxidací mědi, bude braná jako nekovový materiál. Je to z důvodu vysoké matnosti a nízké odrazivosti materiálu.

Klikneme do nodu Principled BSDF. Stisknutím Shift + D vytvoříme kopii. Tu přesuneme nad původní shader. Shader přepojíme místo předchozího, ať vidíme co upravujeme.

  • Metallic kopie nastavíme na 0,
  • Spectacular s nejnižším IOR mědi vychází zhruba na 0.28,
  • Roughness je podstatně vyšší, já zvolil hodnotu 0.8.

Přidejíme node Musgrave Texture. Pomocí klávesy Shift a držením pravého tlačítka myši vytvoříme bod na spojnici mezi mappingem a noise texture (pozn. bylo by možné to napojit přímo, ale toto je dobrý nástroj pro přehlednost). Vytvořeným bodem lze po označení pohybovat pouze po stisknutí klávesy B. Nově vytvořený bod propojíme vektorem Musgrave texture. Tuto texturu propojíme se shaderem pro měděnku s Base color. Musgrave texture nastavíme tyto hodnoty: Scale: 50; Detail: 16; Dimension: 0; Lacunarity: 1,4; Offset: 0,8; Grain 1,7. Mezi spojení textury a shaderu vložíme ColorRamp pomocí:

Shift + A -> Convert -> ColorRamp

Měděnka je zeleno-modrá, černou změníme na nějakou takovou barvu. Bílou změníme na tmavší barvu, než je původní měď. Mezi tento přechod vložíme více variant použité zelenomodré barvy (menší/větší saturace a světlost):

ColorRamp – měděnka

Další krok by běžně byla samozřejmě další normála, tentokrát akorát výraznější a drobnější textury, tak jako úprava barev samotné mědi. Tehdy byste pomocí textury a jemného přechodu udělali kov reálnější. Stejný systém by šel aplikovat na hodnotu roughness. Ale popisovat zde úplně každý krok by bylo repetitivní a zbytečné, ostatně to si můžete dokončit s vědomostmi, co získáte v tomto článku. A zároveň dokončit si úlohu samostatně doporučuji, tak jako si různě pohrát s hodnotami, tím se člověk naučí nejvíce. Další a zároveň poslední krok tohoto návodu bude odpovídající spojení vytvořených shaderů.

Spojení měděnky s mědí

Vložíme si Noise Texturu s parametry Scale: 13,8; Detail: 16; Distortion: 0. Tu propojíme s již vytvořeným Mappingem. Dále vložíme Musgrave Texture s parametry Scale: 15,5; Detail: 13,8; Dimension: 0; Lacunarity: 0,5; Offset 7,4; Gain: 31,8. Taktéž propojíme s Mappingem. Vložíme node MixRGB:

Shift + A -> Color -> MixRGB

Spojíme s ním textury, Fac z noise texture navedeme do Color1 a Fac z Musgrave Texture navedeme na Color2. Klikneme na rozkládací lištičku a zvolíme Lighten. Vložíme ColorRamp. Bílý posuvník posuneme zhruba do středu. Možnost Linear změníme na Constant. Mezi shader a Material Output vložíme Mix Shader.:

Shift + A -> shader -> Mix Shader

Na Fac tohoto Shaderu připojíme právě vytvořenou texturu. Měděnka musí vést do horního shaderu v Mix Shaderu a samotná měď v tom dolním druhém, výstup připneme do Material Output na Surface.

Pokud si s tím pohrajete, můžete dosáhnout takovéhoto (nebo podobného) výsledku:

Ffinální možnost

Závěr

Cvik dělá mistra, proto zkoušejte a zkoušejte, co vám čas a představivost dovolí. Těším se u dalšího dílu, kde se podíváme na nekovovou texturu dopodrobna. Možná vyjde prostor i na textury látek.


 

Stáhnout

Staženo 59x (4.97 MB)

 

 

Článek pro vás napsal Kureii
Avatar
Jak se ti líbí článek?
2 hlasů
Autor se ve velké míře věnuje Blenderu a jiným 3D softwarům. Okrajově se věnuje programování. Studuje uměleckou školu, snaží se tedy vše propojovat se získávaným citem pro estetiku.
Předchozí článek
Jak ovládat Blender aneb Před použitím promíchat
Všechny články v sekci
Blender
Aktivity (4)

 

 

Komentáře

Avatar
hanpari
Redaktor
Avatar
hanpari:6. června 17:08

Pěkná práce

 
Odpovědět
6. června 17:08
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Kureii
Redaktor
Avatar
Odpovídá na hanpari
Kureii:6. června 17:32

Díky

 
Odpovědět
6. června 17:32
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.