Tvorba scény TEMNÉ ZÁKOUTÍ v 3ds max - část první - 3D grafika - 3Dscena.cz: 3D grafika jako na dlani

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:



3D grafika

Tvorba scény TEMNÉ ZÁKOUTÍ v 3ds max - část první

23. února 2006, 00.00 | Na následujících řádcích se seznámíme s postupem, kterým byla vytvořena scéna “Temné zákoutí”. Pro tvorbu této scény byl použit jediný software – Autodesk 3ds max ve verzi 7 a nebylo použito žádných produktů (pluginů) dodaných třetími stranami.

Tvorba scény TEMNÉ ZÁKOUTÍ v 3ds max - část první

Hotová scéna

Úvod

Na následujících řádcích se seznámíme s postupem, kterým byla vytvořena scéna “Temné zákoutí”. Pro tvorbu této scény byl použit jediný software – Autodesk 3ds max ve verzi 7 a nebylo použito žádných produktů (pluginů) dodaných třetími stranami. Techniky použité při tvorbě scény jsou dosti obecné, neměl by tedy v zásadě být problém postupovat (volně) podle návodu i v jiném 3D vizualizačním software nebo v nižších verzích programu 3ds max.

Jedná se o první z celkových tří dílů - nejprve se podíváme na postup modelování jednotlivých objektů a poté naznačím "dokončovací práce" jako je tvorba materiálů, osvětlení a použité efekty.

Jelikož rozepsat vytvoření celé scény do největších podrobností by bylo neefektivní (jak z hlediska praktické náročnosti tak pro přehlednost), nebudu popisovat jednotlivé kroky detailně, spíše vždy naznačím techniku a další postup ponechám na čtenářově – tedy autorově – fantazii. Předpokládám tedy alespoň základní znalosti a orientaci v prostředí 3D modelovacích software, potažmo 3ds max.

Část první - modelování

Přistoupíme rovnou k první a zároveň nejobsáhlejší části tvoření – modelování jednotlivých částí scény a objektů. Spustíme tedy 3ds max a z nabídky „File“ zvolíme „Reset“. Tím vrátíme nastavení programu na výchozí hodnoty a vyhneme se nepříjemnostem, že někdo před námi (nebo dokonce my sami) nastavil funkčnost jinak, než jak bychom ji očekávali my. Dále nastavíme měrné jednotky, ve kterých budeme pracovat na centimetry – z nabídky Customize zvolíme Units Setup a vybereme volbu “cm”. Ačkoli nebudeme pracovat s centimetrovou přesností ale spíše s citem, pomohou nám tyto jednotky alespoň pro základní představu zejména při úpravě vzájemného měřítka objektů. Pokud nám centimetry nebudou vyhovovat z důvodu upřednostňování jiných měrných jednotek, např. palců, vybereme jinou možnost (v případě palců tedy zvolíme volbu “inches”).

Modelování země a stěn

První část modelování rozepíši trochu podrobněji, abych čtenáři alespoň trochu přiblížil prostředí 3ds max. Postupně však budu tuto detailní popisnost omezovat a budu se mlčky odvolávat na popis technik popsaný na začátku, případně odkáži čtenáře na jiné zdroje zabývající se tématikou 3ds max, které zevrubně popisují postupy při použití konkrétních metod2.

Začneme tím, že si vytvoříme „prostor“ našeho zákoutí – zemi (podlážku) a stěny ohraničující tento prostor. Ve viewportu Top (Viewport = prostor na pracovní ploše programu, ve kterém je zobrazen (většinou drátový/stínovaný) model a ve kterém se provádějí úpravy a tvorba objektů. Slouží jako reference pro kontrolu vzhledu objektu či scény aniž by bylo nutno provádět tzv. „výpočet“ scény (Render). Viewport Top, jak napovídá anglické slovo „Top“, představuje pohled na scénu shora) vytvoříme Plane (Plane neboli „rovina“ je jedním ze základních objektů (tzv. primitiv), které lze v prostředí 3ds max rovnou vytvořit. Najdeme ji v nabídce „Create – Standard primitives – Plane“ nebo na panelu Create v seznamu „Standard primitives“) o dostatečných rozměrech – například 4 x 10 m (tj. 400 x 1 000 cm, rozměry zadáme na panelu Modify do příslušných polí „Length“ a „Width“), která bude „podložím“ celé scény. Bude tedy představovat jakousi základní plochu, na které bude vše – stěny, ale i ostatní objekty - „stát“.

Dále vytvoříme stěny. Můžeme jednoduše použít objekty typu „Box“ – kvádry, kterým nastavíme patřičné rozměry (objekt typu Box je stejně jako Plane tzv. Standard primitivem, příkaz k jeho vytvoření tedy nalezneme na stejných místech jako v případě Plane). Takto vytvořené stěny by byly vhodné v případě, že bychom chtěli použít rovné stěny bez jakýchkoli otvorů, což v našem případě neplatí vždy, neboť jedna ze stěn ohraničujících naše zákoutí bude zeď domu se dvěma okny. Objekty Box tedy můžeme použit na stěny naproti domu a stěnu „zadní“, neboť v těchto zdech žádné otvory nebudou. Vytvoříme tedy tyto 3 stěny (stěna naproti domu není rovná, ale skládá se ze dvou stěn, které nejsou v jedné rovině a tvoří jakýsi „roh“) a umístíme je do pozice jako na následujícím obrázku:

Obrázek 1

Obrázek 1 - Tři základní stěny zákoutí a podkladový objekt typu Plane

Nyní vytvoříme stěnu domu s okny. Mohli bychom ji opět vytvořit pomocí objektu Box a pak pomocí booleovských operací (Booleovské operace nalezneme v nabídce (nebo na panelu) Create – Compound objects – Boolean. Pomocí těchto operací lze provést vzájemné úpravy na dvou objektech – např. jejich sjednocení, rozdíl (A-B i B-A), výřez apod.) „vyříznout“ otvory pro okna, avšak toto řešení nepovažuji za elegantní. Osobně mnohem raději používám jiný postup, kdy mám nad celým vytvořeným objektem kontrolu. Tento způsob spočívá z aplikování modifikátorů na dvourozměrné objekty typu „Shape“. Vytvoříme si tedy (ve viewportu Left) 2D objekt typu Shape - Rectangle (obdélník) představující obrys stěny při čelním pohledu a dále (v témže pohledu) dva menší obdélníky představující okna v této stěně. Vybereme jeden z těchto obdélníků, pravým tlačítkem myši vyvoláme v libovolném viewportu kontextovou nabídku a vybereme „Convert To - Convert to Editable Spline“. Tím změníme objekt typu rectangle na editovatelný objekt typu Spline, na kerém je možné místo parametrických úprav délky a šířky (objekt typu Rectangle) provádět mnohem větší škálu úprav (o tyto parametrické změny však konverzí přijdeme; nicméně není problém upravit šířku např. pomocí posunutí vertexů – neboli bodů – či hran). K takovémuto objektu můžeme rovněž „připojit“ jiné (v tomto případě 2D, neboť i objekt ke kterému chceme jiné objekty připojit je 2D) objekty – provedeme tak pomocí příkazu „Attach“ na panelu Modify (nebo příkaz vyhledáme v systémové nabídce). Takto ke zkonvertovanému obdélníku postupně připojíme oba zbývající obdélníky, takže výsledkem bude jeden objekt typu „Editable Spline“ – stěna domu s dvěma okny. Pokud nejsme s vzhledem stěny (např. s umístěním oken) spokojeni, vybereme jednu z možností Sub-object – např. volba Vertex nám umožní vybírat a měnit jednotlivé body, Edge hrany a Spline celé uzavřené křivky – objekty.

Obrázek 2

Obrázek 2 – Základ stěny domu se dvěma okny vytvořený pomocí 2D objektů Rectangle pospojovaných v celek v rámci Editable spline

Vybereme (pokud vybrán není) tento objekt a na panelu Modify ze seznamu „Modifier List“ vybereme modifikátor Extrude. Ten přidá 2D obdélníkům třetí rozměr, přičemž objekty (uzavřené křivky) „v objektu“ budou ponechány jako otvory v novém 3d objektu – což je přesně to, co potřebujeme pro vytvoření stěny s otvory pro okna. V nastavení modifikátoru Extrude změníme parametr Amount, čímž zadáme „hloubku“ stěny. Tak získáme celou stěnu domu s okenními otvory, kterou můžeme kdykoli snadno upravit tak, že se v tzv. Modifier Stacku (zásobníku) přesuneme na úroveň Editable Spline a upravíme pozici/velikost oken nebo na úrovni modifikátoru Extrude, kde parametricky nastavíme tloušťku stěny. Takto vytvořenou stěnu domu umístíme na zem (podlážku, vytvořenou dříve pomocí Plane) k ostatním stěnám, například jako na následujícím obrázku:

Obrázek 3

Obrázek 3 – Zkompletované zákoutí vytvořené podkladovým objektem typu Plane, třemi objekty typu Box a „vyextrudovaným“ obrysem stěny domu

Tím jsme vytvořili základ prostoru zákoutí, který budeme postupně doplňovat dalšími detaily a jinými objekty.

Modelování dlažby – tzv. „kočičích hlav“

Prvním „detailem“, o který obohatíme scénu, bude dláždění. Pokud bychom jako podklad ponechali rovný holý objekt typu Plane, nejen že by scéna působila velice uměle a nereálně, ale také nezajímavě. Dlažbu budeme skutečně modelovat, neboť pouhým použitím textur bychom nikdy nedosáhli dostatečně kvalitního efektu. Takový postup by byl vhodný v případě, že bychom měli stanoven nějaký „polygonový rozpočet“, tzn. kdy by nám šlo o to, aby výsledná scéna měla co nejméně polygonů. Taková situace nastává zejména při tvorbě prostředí a modelů do realtimových enginů (především her), kdy by vysoký počet zpracovávaných dat až drasticky negativně působil na plynulost animace. My však tvoříme statický obrázek, takže tato starost odpadá.

Vyjdeme opět z objektu typu Box, kterému nastavíme segmenty (length, width a height) na 3x3x1. Takto vytvořený objekt zkonvertujeme na objekt typu Editable Poly (např. kontextová nabídka – Convert To - Convert To Editable Poly). Objekty typu Editable Poly jsou většinou základem pro tzv. low-poly modelování, neboť umožňují upravovat objekt na úrovni jednotlivých (pod)vertexů, hran, faců a polygonů. Podobně budeme postupovat i my, v našem případě však výsledná dlaždice nebude příliš „low-poly“, neboť na ni aplikujeme modifikátory, které ji „vyhladí“ (modifikátor Turbosmooth nebo Meshsmooth) a vnesou jistou nepravidelnost (modifikátor Noise). Vybereme vnitřní polygony a pomocí Scale je zvětšíme tak, abychom docílili zúžení polygonů vnějších, nebo pokud nám tento postup nevyhovuje, můžeme stejného výsledku dosáhnout naopak posunutím okrajových vertexů (hran) směrem k vnitřní části. Tento postup však není nezbytně nutný, jen zvýší „ostrost“ hran dlaždice - můžeme tedy klidně Box ponechat tak, jak je. Pak z nabídky modifikátorů vybereme modifikátor Turbosmooth, jehož iterace (úroveň vyhlazení, čím vyšší číslo tím více polygonů a tím hladší výsledný objekt bude, pozor však na zadávání vysokých hodnot – mohou mít za následek „zamrznutí“ celého systému) ponecháme na 1 - v případě jednotlivých dlaždic je tato hodnota naprosto dostačující. Na takto vyhlazený objekt aplikujeme modifikátor Noise, jehož parametry (Seed, a Strength X, Y, Z) nastavíme dle libosti – či spíše citu tak, abychom byli s výsledkem spokojeni. Výsledná dlaždice by mohla vypadat například takto:

Obrázek 4

Obrázek 4 – Výsledná dlaždice po aplikování modifikátorů Turbosmooth a Noise

Tímto způsobem vytvoříme 5-6 typů dlaždic o různých velikostech a parametrech a umístíme je vedle sebe tak, aby tvořily malou část – výsek – dláždění:

Obrázek 5

Obrázek 5 – Několik druhů dlaždic poskládaných v malý výsek dláždění

Označíme všechny dlaždice a vybereme Group z nabídky Group, čímž jednotlivé dlaždice seskupíme v jeden celek.

Tento malý „výsek“ několikrát nakopírujeme (naklonujeme, např. pomocí klávesové zkratky Ctrl+V, kde vybereme buď možnost Copy (klonovaný objekt bude nezávislý na „rodičovském“ objektu) nebo možnost Instance (kdy změna na jednom z objektů se projeví zároveň na objektu druhém) a pomocí funkce Mirror otočíme podél různých os a takto vzniklé variace „výseku“ poskládáme k sobě tak, aby tvořily jeden velký celek - dláždění. Tento celek opět můžeme seskupit příkazem Group, získáme tím možnost pohybovat celým dlážděním najednou bez potřeby vybírání jednotlivých dlaždic. Chceme-li aby neležely všechny dlaždice v jedné rovině, můžeme na celou skupinu aplikovat ještě jeden modifikátor Noise, který „zvlní“ celé dláždění a vyvolá dojem nerovného povrchu. Takto vytvořené a seskupené dláždění umístíme na Plane představující zemi.

Obrázek 6

Obrázek 6 – Výsledné dláždění poskládané z jednotlivých skupin dlaždic

Tématické zařazení:

 » 3D grafika  

 

 

 

 

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

Uživatelské jméno:

Heslo: