Blender tutoriál: Modelování lidského oka - Grafika.cz - vše o počítačové grafice

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



Střední formát

Blender tutoriál: Modelování lidského oka

6. září 2007, 00.00 | Ačkoliv už bylo na téma modelování oka napsáno několik desítek tutorialů (minimálně v cizím jazyce), možná se s nimi ještě někteří z vás nesetkali. Dnešní
článek si tedy klade za úkol seznámit vás s několika možnostmi, které v případě daného úkolu nabízí (nejen) Blender.

Dnes si ukážeme, jak je možné propracovat se k lidskému oku, a to na dvou technikách, přičemž myslím, že jedna z nich je hodně známá – jde o napodobení stylu očí postaviček Pixaru. Druhý způsob už je asi méně známý, ale je též možné, že se s ním už někteří z vás setkali.

Takže začneme. Otevřete si váš oblíbený 3D program (třeba Blender :), přepněte se do čelního pohledu a vložte kouli (UV Sphere) s 8 prstenci a 8 segmenty:

Přidání UV sphere

8 prstenců, 8 segmentů

Koule

Poté je třeba umazat část koule vepředu a vzadu.Toto jsem provedl z pohledu z boku:

'Ochuzená koule

Vlevo na obrázku bude čočka a duhovka, pravou stranu jsem umazal kvůli lepšímu UV mapování (tento model se stane základem i pro druhé oko, u "Pixarovského" nebude unwrap třeba). Kdyby se všechny body sbíhaly do jednoho místa, síť by se nerozložila zrovna nejlépe. Toto umazání vertexů ovšem může být dvojsečná zbraň, například pokud byste chtěli exportovat lowpoly model, který nebude "uzavřený", mohlo by docházet k problémům s jinými programy (např. XNormal), ale to už odbíhám od tématu.

Dále jsem zkopíroval edge loop, který je nejvíc vlevo – tzn. 8 vertexů tvořících smyčku. Výběr edge loopu se provádí snadno pomocí najetí myši na hranu a stisknutí ALT+RMB. Poté jsem tento zkopíroval SHIFT+D a stiskl P, čímž se vertexy separovaly a vytvořily nový mesh, mající pouze tento edge loop. Tento mesh jsem poté ještě jednou zkopíroval, čímž jsem vytvořil základ pro rohovku a duhovku (potřebujeme, aby se střetávaly na stejných místech, aby nevznikly mezery). Následující vytvoření duhovky bylo pouze otázkou extrudování jednoho ze dvou meshů (oněch edge loopů):

Duhovka

Pokud by se vám špatně otáčely normály – jako je tomu níže na obrázku – stačí vybrat všechny body A a stisknout CTRL+N k jejich přepočítání směrem od centra:

Duhovka

Podotýkám, že jsem již stihl zapnout subsurf modifikátor a nastavit mesh na vyhlazení hran (Setsmooth). Nastavení tohoto naleznete zde. Dalším krokem bylo vytvoření rohovky z druhého meshe:

Rohovka

Podobný postup s využítím separace edge loopu jsem opakoval s duhovkou, jen s tím rozdílem, že jsem vytvořil čočku:

Čočka

A přiřadil jí tento materiál:

Materiál samotného bělma není opravdu ničím převratným ani složitým:

Poté jsem duhovce přiřadil nový materiál. Pokud patříte mezi lenivější (což ovšem silně nedoporučuj:)), texturu můžete vyřešit procedurální blend texturou, nastavenou na radial:

A změníme její vzhled přidáním několika sliderů a nastavením jejich hodnot. Jen pro úplnost – první a poslední slider mají stejné hodnoty, aby byl zajištěn plynulý barevný přechod:

Ovšem po namapování se vám výsledek nejspíš nebude moc líbit. Tedy alespoň mně se nelíbil, a tak jsem se rozhodl vytvořit jinou texturu. Rozdíl posuďte sami:

Nevzhledné oko

Texturu jsem vytvořil v Gimpu, ale samozřejmě se nevylučuje ani použití jiných editorů, jako třeba Corel PhotoPaint či Adobe Photoshop. Postup byl jednoduchý. Vytvořil jsem obrázek o velikosti 450 x 450 px a vyplnil ho tmavě modrou barvou. Poté jsem ze záložky Filtry vybral Šum a Roztřepení HSV. Mírně jsem navýšil parametry Sytost a Jas. Poté jsem použil Gaussovské rozostření na 7 px. Posledním krokem bylo použití Rozmáznutí pohybem, nastaveným na přiblížení a s délkou 10 px. Takto vypadala textura ještě po mírném zvýšení kontrastu a snížení jasu:

Lepší extura

S touto texturou už oko vypadá mnohem lépe:

Oko ve stylu Pixaru

Tak. A máme oko ve stylu Pixar studios. Nyní se pojďme podívat na druhý způsob vytvoření oka, který já osobně shledávám sympatičtějším:

Použijeme stejný základ jako v předchozím případě:

'Ochuzená' koule

Vyextrudujte oko přibližně do této podoby:

Extrudování duhovky a čočky

Po zapnutí subsurfu spatříte něco takového:

Highpoly wire

A pro doplnění dodávám náhled v solid módu:

Solidmode wire

Nyní tento mesh zduplikujte v object módu, lehce ho zvětšete a odstraňte v něm body představující duhovku a čočku:

Překrývající se meshe

Nyní přetvořte extrudováním mesh tak, jak to vidíte na obrázku:

Mesh který se bude lesknout

Tento mesh bude způsobovat onen "živý lesk" v očích s tímto materiálem:

Všimněte si hlavně, že jsou vypnuty parametry Shadbuf a Shadow, aby materiál nepřijímal a nevrhal stíny. Pojďme se teď podívat na unwrap samotného oka. V edit módu jsem vytvořil švy výběrem hran a následným stisknutím CTRL+E a výběrem položky Mark Seam. Nad umístěním švů vždy důkladně přemýšlejte, usnadňuje to pozdější práci. Je také dobré dopředu si rozvrhnout, které části budete jak texturovat, a v závislosti na tomto vybírat metody unwrapování, LSCM není vždy nejvhodnější. Místa švů jsou patrná z obrázku:

Místa švů

Šev na spodu oka vede až na druhou stranu. Přepněte se do Face select módu a vyberte všechny facy. Poté si rozdělte 3D okno na 2 části a v jedné z nich otevřete UV image editor (Shift+F10). Nyní stiskem E a potvrzením Make unwrap vytvoříte LSCM unwrap. Nutno dodat, že síť není rozložena zrovna nejšťastněji, na obrázku je totiž spousta nevyužitého místa:

Špatný unwrap

Nyní přichází na řadu další z novinek - Live unwrap transform. Umožňuje realtimový náhled na změnu pozice uzamknutých bodů v síti, lépe to pochopíte z obrázků a samozřejmě z vlastních testů. Aktivujete ji v menu UV's:

Výběr live unerap transform

Zamkl jsem čtyři body na okraji sítě bělma tak, že jsem je vybral a stiskl P. Zde lze ideálně vidět, jak rozdílný význam mají stejné klávesové zkratky v jiných oknech.

Unwrap

Na obrázku zbylo ještě místo, tak jsem zvětšil facy představující duhovku, aby na nich bylo patrných více detailů. Nyní, když už budete s unwrapem spokojení, bude se vám asi hodit i jeho export do obrázku. V současné době Blender podporuje export do .tga či .svg formátu. Vyberte UV's - Scripts - Save UV Face layout:

Nastavení exportu sítě

Poté obrázek uložte, kam je vám libo, a otevřete jej v grafickém editoru. Já jsem tentokrát použil Adobe Photoshop, protože texturu jsem částečně maloval tabletem, který není tak dobře podporován Gimpem. Bělmo jsem vyplnil růžovobílým gradientem a dokreslil jsem do něj několik žilek. Podle dalšího uvážení jsem zjistil, že by měly být tenčí, ale neuložil jsem PSD soubor s jednotlivými vrstvami, takže jsem nechal texturu takto:

Textura má v plném rozlišení 114 kB. Duhovku jsem maloval světlejšími a tmavšími tahy směrem od středu čočky a následně jsem toto celé jemně rozmazal. Nakonec jsem v Blenderu přidal duhovce materiál s tímto nastavením:

Nezapomeňte, že mapování textury musí být nastaveno jako UV a Flat! A takto vypadá naše oko ve výsledku:

Výsledné oko

Mám pocit, že realistické oči dokáží vdechnout život snad každému modelu, pro porovnání přiložím jeden z vlastní dílny, určený pro animaci:

Pokud byste měli zájem o .blend soubor oka, můžete jej stáhnout zde

Doufám, že tento tutoriál nebyl pro vás jenom bezduchým omíláním známé problematiky. Těším se u dalšího tutoriálu na shledanou.

Tématické zařazení:

 » Rubriky  » VSE  

 » Rubriky  » 3dscena  

 » Rubriky  » Go verze  

 » Rubriky  » 3D grafika  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: