Mendelova zemědělská a lesnická univerzita Provozně ekonomická fakulta
Analýza modelovacích technik ve vybraných 3D programech Bakalářská práce
Vedoucí práce: Ing. Mgr. Jana Andrýsková
Michal Kozel
Brno 2006
Prohlašuji, že jsem bakalářskou práci vypracoval samostatně s použitím literatury a zdrojů uvedených v seznamu. V Brně dne 26. května 2006
……………………………………
Za cenné rady a připomínky při vypracování této bakalářské práce děkuji paní Ing. Mgr. Janě Andrýskové.
4
Abstract Kozel M. Analyse modelling technique in selected 3D programs. Bachelory thesis. Brno, 2006. is bechelory thesis deals with modelling techniques which are used for creation of three-dimensional objects in 3D Studio Max and Rhino 3D programs in term of suitability of use and time consumption. is paper presents bases of 3D computer graphics, objects modelling and output three-dimensional scene on surface.
Abstrakt Kozel M. Analýza modelovacích technik ve vybraných 3D programech. Bakalářská práce. Brno, 2006. Tato bakalářská práce analyzuje modelovací techniky používané při tvorbě trojrozměrných objektů v programech 3D Studio MAX a Rhino 3D, z hlediska jejich vhodnosti použití a pracnosti. Dokument vykládá základy 3D počítačové grafiky, modelování objektů a výstup trojrozměrné scény na plochu.
OBSAH
5
Obsah 1 2
3
4
5 6
Úvod a cíl práce 1.1 Úvod do problematiky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Cíl práce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Současný stav řešené problematiky 2.1 Analýza problému . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 3D počítačová grafika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Objemové modelování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Povrchové modelování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Aranžování scény . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Metodická východiska práce 3.1 3D studio Max ................................................ 3.2 Rhino 3D .................................................... 3.3 Cinema 4D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 LightWave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Analýza vybraných 3D programů ................................ 3.5.1 Pracovní prostředí . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 Ovládání . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.3 Texturování ............................................ 3.5.4 Nasvícení scény . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.5 Shrutí a doporučení . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Analýza modelovacích technik 4.1 Polygonální modelování ........................................ 4.2 Modelovací metody v 3D studiu Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Pod-objekt bod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Pod-objekt hrana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Pod-objekt polygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 NURBS modelování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1 Interpolační křivky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.2 Aproximační křivky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Modelovací metody v Rhinu 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Modelovací postupy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.1 BOX modelování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.2 Modelování pomocí plane ................................ 4.5.3 Spline modelování . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.4 Modelování pomocí NURBS křivek ........................ 4.5.5 Shrnutí a doporučení .................................... 4.6 Vizualizace v 3D studiu Max .................................... Závěr Literatura
6 6 7 8 8 9 9 10 10 13 13 15 16 17 17 18 19 20 21 21 23 23 24 24 25 26 27 27 28 31 35 35 43 47 50 56 60 63 64
1
ÚVOD A CÍL PRÁCE
1 1.1
6
Úvod a cíl práce Úvod do problematiky
Tvorba obrazu pomocí počítače zažila v posledních několika desetiletí rozmach značných rozměrů. Společně s vývojem výpočetní techniky se také přímo úměrně zvyšovaly možnosti použití počítače při tvorbě obrazu, a to hlavně díky rostoucímu výpočetnímu výkonu. Obraz tvořený pomocí počítače je používán ve filmech, televizních programech, tištěných médiích a dále i ve stavebnictví, strojírenství nebo zdravotnictví. Díky téměř neomezeným možnostem při realizaci výsledného obrazu či scény se tento způsob tvorby obrazu používá stále častěji. Tvořenému objektu přidělíme jakékoliv fyzické vlastnosti. Namísto nákladné a pracné miniatury vytvoříme celý model v počítači, který nám umožňuje mnohem větší variabilitu při pozdější editaci. Jednoduše řečeno, vytváříme díky tomuto postupu takové scény, které nejsou proveditelné žádnou jinou dostupnou technologií. Proto také například George Lucas natočil některé své díly Hvězdných válek až v současné době. Už nyní můžeme shlédnout filmy, které jsou kompletně vytvořeny pomocí počítače a vhodného sowaru. Už jsou pryč doby, kdy tyto obrazy, scény a animace bylo možné tvořit jenom na pracovních stanicích firmy Silicon Graphics a programech určených pro tuto platformu. V současné době jsou tyto programy dostupné i obyčejnému uživateli na platformě PC a každý si je může vyzkoušet v jejich testovací verzi nebo některé firmy nabízí tyto programy pro studenty zdarma. Ve výše zmíněných oborech je trojrozměrná grafika využívána ve stejném měřítku a obvykle mnohem více než dvourozměrná. Samotná tvorba 3D grafiky se skládá z několika hlavních fází. Výchozí, a téměř nejdůležitější část procesu tvorby 3D scény, je modelování. Při modelování se snažíme co nejvíce napodobit a zjednodušit objekt reálného světa. Při tvorbě modelu máme možnost výběru z několika programů a také několika modelovacích metod. Všechny modelovací postupy by měli vést k vizuálně identickému cíli. Naopak stavba daného objektu je rozdílná. O vhodnosti použití rozhoduje sám autor dle modelovaného objektu.
1
ÚVOD A CÍL PRÁCE
1.2
7
Cíl práce
3D počítačové grafika se v poslední době stala nedílnou součástí počítačové grafiky. Způsob tvorby je pro spoustu lidí velkou neznámou a v některých případech si vytvořený obrázek pletou s fotografií. Lidé, kteří se však setkali se způsobem tvorby obrázků prostřednictvím počítače, poznali, že se jedná o delší proces, u kterého uživatel stráví i několik hodin práce. Cílem práce je seznámení čtenáře s postupem tvorby trojrozměrného modelu ve vybraných 3D programech z pohledu použité aplikace a modelovací techniky. Práce přiblíží v jakém rozsahu spolu souvisí 3D nástroj a použitá modelovací technika, protože uživatelsky přívětivý 3D nástroj a jeho dobrá znalost jsou určitě významnými výhodami před započetím samotné tvorby objektu a scény. U vybraných 3D grafických aplikací bude zhodnoceno jejich uživatelské prostředí a srovnány z hlediska jejich vhodnosti použití pro konkrétní analýzu modelovacích technik Proces tvorby objektu se skládá z modelování, aranžování scény a tvorby obrazu z 3D modelu. Modelování je nejdůležitější dílčí část od které se odvíjí další postup práce, proto je mu v práci věnováno nejvíce prostoru. K vyjádření objektu v prostoru a jeho tvorbě se používá několik modelovacích postupů. Srovnání bude zaměřeno na techniky povrchového modelování, protože většina objektů je vyjádřena právě tímto způsobem. Jejich postup bude analyzován z hlediska pracnosti a z ní vycházející časové náročnosti a pozdější manipulace. Zkoumané modelovací techniky by měli vést k vytvoření identického objektu, což bude zhodnoceno v závěru práce. Práce může posloužit jako průvodce začátečníků do oblasti 3D počítačové grafiky a pokročilejším uživatelům 3D aplikací jako ucelený přehled a průvodce modelovacích technik pro tvorbu složitějších objektů.
2
SOUČASNÝ STAV ŘEŠENÉ PROBLEMATIKY
2 2.1
8
Současný stav řešené problematiky Analýza problému
V současné době se 3D počítačová grafika dostává do stále většího podvědomí lidí, protože aplikace jsou více dostupné než v minulosti. Někteří studenti se setkají s tímto druhem tvorby obrázků v rámci výuky na střední nebo vysoké škole. Mnoho lidí může na obrázky vytvořené pomocí počítače narazit na Internetu, zajímá je proces jejich vzniku nebo by sami někdy v budoucnu chtěli takový obrázek vytvořit. Při prvním shlédnutí obrázků vytvořeného prostřednictvím 3D nástroje, se spousta lidí zeptá, jak se takový obrázek vůbec vytváří. Tvůrci je tento proces jasný a mnohdy za ním stojí desítky hodin práce a dalších několik hodin může zabrat samotný výpočet obrázku. Na trhu najdeme širokou paletu programů určených pro modelování a tvorbu výsledné scény, ale s jakým 3D nástrojem by měl laik začít? Spousta aplikací je uživatelům dostupná především prostřednictvím licencí určených pro školní použití. Výběr vhodného programu v některých případech záleží také na technice, kterou se chystáme zachytit modelovaný objekt. Mnoho programů se snaží pokrýt co nejširší možnosti tvorby modelu, ale také se na trhu nachází 3D nástroje, které se specializují pouze na určitý způsob modelování. Modelování je při tvorbě scény její výchozí a proto i stěžejní část. Zachycení struktury objektu také zabírá nejdelší část tvorby celé scény, když pomineme samotný výpočet. Pokud chceme vytvořit složitý objekt, budeme muset použít techniky povrchového modelování, mezi nimiž se nejčastěji používají NURBS křivky a síť tvořená polygony. Požadavkem uživatele je věrohodné zachycení modelovaného objektu, minimální časová náročnost a vhodná struktura objektu z hlediska jeho editace, manipulace a nárokům na výpočetní výkon.
2.2
3D počítačová grafika
2.2
9
3D počítačová grafika
3D počítačová grafika je specializovaným odvětvím počítačové grafiky, která spadá do oboru informatiky. Počítačová grafika se využívá na vytváření umělých snímků a také na úpravu zobrazitelných informací zachycených z reálného světa, například úprava digitální fotografie. 3D počítačová grafika se liší od 2D počítačové grafiky v tom, že v počítači jsou uložena data, která představují trojrozměrnou scénu. Tato grafika je založená na vektorové grafice a informace o bodech, čárách a křivkách jsou uloženy v trojrozměrném prostoru, namísto v dvourozměrném prostoru v 2D grafice. Výstupem 3D scény je 2D obraz. V přeneseném slova smyslu tvorbu 3D počítačové grafiky můžeme přirovnat k sochařství či vyřezávání, 2D počítačovou grafiku naopak k malování nebo kreslení. Dvourozměrná grafika je podmnožinou trojrozměrné grafiky, protože 3D aplikace využívají techniky z 2D grafiky, například křivky[1]. Při modelování v trojrozměrném prostoru jsou známy dva základní druhy modelování.
2.2.1
Objemové modelování
Objemové modelování je jednoznačné prostorové vyjádření pevných částí objektu. Objekty jsou charakterizovány parametrickou matematickou rovnicí. Parametry modelu můžou být modifikovány později a na modelu se okamžitě zobrazí dopad modifikovaných parametrů. Jde vlastně o interaktivní modelování těles, kdy je zachycen postup konstrukce tělesa. Technika používaná v objemovém modelování se nazývá Constructive solid geometry (CSG). Při konstrukci modelu z primitivních těles se obvykle používají Boolean operace, kam patří sjednocení, rozdíl a průnik. Nejjednodušší objemová tělesa využívaná při tomto typu modelování jsou tzv. primitivní tělesa, například krychle, koule, jehlan, kužel, roura atd. Počet primitivních těles je limitován použitým sowarem. Computer solid geometry se používá především v případě, kdy je požadována jednoduchá geometrie těles nebo matematicky přesné vyjádření. CSG je oblíbená, protože modelář může použít soubor poměrně jednoduchých objektů pro vytvoření komplikované scény a kdykoliv později může změnit pozici objektů v celé geomterii nebo změnit Boolean operace použité ke kombinaci objektů.
Obrázek 1: Boolean operace - sjednocení, rozdíl, průnik
2
SOUČASNÝ STAV ŘEŠENÉ PROBLEMATIKY
10
Pomocí této techniky ovšem nelze vymodelovat všechny objekty, proto se používá další druh modelování, nazývaný povrchové[4].
2.2.2
Povrchové modelování
Povrchové modelování má mnohem volnější tvar než parametrické modelování. Výchozí objekty povrchového modelování lze v programech vytvořit přímo nebo vytvořit základní parametrické objekty, a ty potom převést na editovatelnou plochu s kontrolními body. Tento druh modelování se používá k tvorbě zakřivených ploch jako jsou například karoserie automobilů, trupy lodí, lopatky turbín atd. Do povrchového modelování patří tyto modelovací techniky, Nonuniform rational B-spline (NURBS), polygonální modelování a subdivision surfaces. Subdivision surfaces je plocha, která je rozdělena do více plošek, zatímco obecný tvar objektu zůstal nezměněn. Pro přidání více detailů nebo vyhlazení povrchu objektu se aplikuje některý z modifikátorů, který provede subdivision surface. Například v programu 3D studio Max1 se pro subdivision surfaces, použije modifikátor HSDS modifier a pro vyhlazení modifikátor MeshSmooth[5]. Polygonálním a NURBS modelováním se zabývá kapitola 4.
2.3
Aranžování scény
Pod pojmem aranžování scény si nelze představit jenom rozmístění objektů v trojrozměrném prostoru. Obrázek vzniklý vizualizací trojrozměrné scény se skládá ze tří stěžejních kroků: modelování, přiřazení textur objektům a nasvícení scény. Když pominu renderování2, které v mnoha případech může trvat také několik hodin, je základní, a obvykle nejdelší proces, modelování. Modelování je napodobení a zjednodušení objektu reálného světa, kdy se snažím co nejvěrohodněji zachytit jeho vzhled, i když struktura objektu je v mnoha případech rozdílná. Model by měl mít co nejjednodušší strukturu kvůli jeho editaci i výsledné vizualizaci. Na levé straně obrázku 2 jsou kvádry v pohledu 3D studia Max. Každý kvádr má jiný počet segmentů na výšku i šířku. Na pravé straně obrázku jsou opět tyto kvádry po provedené vizualizaci. Struktura objektu nemá v tomto případě vůbec žádný vliv na konečný vzhled. Dalším krokem po vymodelování objektu je přiřazení materiálu. Materiál udává, jak objekt odráží a přenáší světlo. V editoru materiálů se nastavuje barva objektu v přímém světle, ve stínech, v lescích, průhlednosti, lámání, odrazech světla apod. Těleso nemusí být pokryto pouze konstantní barvou, ale lze mu přiřadit také texturu z externího obrázku. Dalšími významnými nastaveními materiálů je tzv. bumb mapping, který dokáže pomocí černobílé masky vytvořit plastičnost textury bez nutnosti úpravy modelu nebo například UV mapping, který umístí texturu na objekt dle souřadnic a upraví její měřítko.
1
3D grafická aplikace používaná pro tvorbu trojrozměrných obrázků[kapitola 4.1].
2
Proces při kterém se tvoří obraz z modelu prostřednictvím 3D grafické aplikace[kapitola 3.2].
2.3
Aranžování scény
11
Obrázek 2: Kvádry v pohledu 3D programu a stejné kvádry po provedené vizualizaci
Osvětlení scény je jeden z nejdůležitějších kroků při sestavování scény a významně přispívá k finálnímu vzhledu. Pouze správným nasvětlením 3D prostoru lze dát scéně realistický vzhled. Světla jsou dalšími objekty ve scéně, které simulují skutečné světlo. Pokud není ve scéně umístěno žádné světlo, scéna je vyrenderována ve stupních šedi nebo odstínech barev přiřazeným jednotlivým objektům. Nasvícení objektů zvyšuje jejich jas a trojrozměrný dojem.
Obrázek 3: Objekty po přiřazení materiálů a nasvícení scény
Rendering Rendering je proces, při kterém dochází k tvorbě obrazu z modelu pomocí počítačového programu. Model je součástí scény, ve které je jasně definována geometrie, pohledy, použité textury a informace o světle. V postupu tvorby digitálního obrazu je to poslední významný krok, který vytváří konečný vzhled scény nebo její animaci. V oblasti 3D grafiky dělíme rendering na interaktivní a neinteraktivní. Při interaktivním renderingu, neboli tvorbě obrazu v reálném čase, jsou snímky pro vytvoření plynulého obrazu zobrazovány v desítkách za sekundu. Tento druh je využíván například v počítačových hrách. Vytvoření animace pro neinteraktivní účely jako jsou video a film trvá o poznání déle. Rendering jednoho snímku může trvat od několika sekund pro jednoduchou až po několik hodin pro náročnou scénu. Důvodem je co nejvyšší kvalita
2
SOUČASNÝ STAV ŘEŠENÉ PROBLEMATIKY
12
obrazu. Jednotlivé snímky jsou ukládány do počítače, a poté pomocí videoeditačních programů poskládány do videa o přibližně 25 snímcích za sekundu, aby byl vytvořen plynulý obraz. Pro dosažení realistického vzhledu scény se při renderingu používají speciální algoritmy, společně nazývané Global illumination. Tyto algoritmy sledují průchod světelných paprsků scénou. V případě, že stojí zdroji světla v cestě objekt, dochází dle materiálu objektu a nastavených parametrů renderingu k absorpci, lámání a odrazu světla[9]. Základní algoritmy zahrnuté v Global illumination a požívané v 3D počítačové grafice. Ray tracing Ray tracing je algoritmus, který se používá v 3D počítačové grafice ke sledování světelných paprsků od jejich zdroje k očím pozorovatele (objektu - kameře). Přesně simuluje průnik světla objekty ve scéně z hlediska odrazu (reflection) a lomu (refraction). K odrazu a lomu světelných paprsků dochází v reálném světě v situaci, kdy světlo přechází z jednoho prostředí do druhého, například ze vzduchu do vody. V 3D studiu Max lze materiálu objektu přiřadit průhlednost, odrazivost a tzv. „index lomu“ dle skutečných materiálů. Podle toho dochází k lámání a odrazu světla i v renderované scéně. Ray tracing se používá k vytvoření realistické scény, ale se zvýšenými nároky na výpočetní výkon, protože každý světelný paprsek je propočítán odděleně. Ray tracing sleduje pouze vliv paprsků přímých světelných zdrojů[9]. Radiosita Radiosita, narozdíl od ray tracingu, simuluje odraz světla ve všech směrech, který vzniká například u hrubých materiálů. Objekty ve scéně nebývají v mnoha případech osvětleny pouze přímým světlem, ale také světlem nepřímým, které na ně dopadá z povrchu okolních objektů. Místa ve scéně, která nejsou osvětlena přímým světlem, se v případě ray tracingu řeší přidáním dalšího okolního světla. Naopak při použití radiosity se rozdělí celá scéna na malé elementy a propočítá se intenzita a odrazy světla mezi jednotlivými elementy navzájem. Jelikož radiosita nedokáže spočítat zrcadlové odrazy nebo průhlednost jako ray tracing, moderní 3D aplikace využívají kombinaci obou těchto algoritmů[9].
3
METODICKÁ VÝCHODISKA PRÁCE
3
13
Metodická východiska práce
3D modelovací soware je aplikace, která slouží k vizualizaci objektu z reálného světa. Mnoho modelovacích programů má široké spektrum použití. Tyto programy umožňují uživateli vytvářet, editovat a aplikovat různé modifikátory na vytvářený model. Na model je obvykle nahlíženo z několika stran, kdy v jednotlivých pohledech je možno objekt přibližovat nebo kolem něj rotovat pro lepší představu při jeho tvorbě. Při práci s modelem je vidět jeho skutečná struktura, kterou obvykle představuje síť složená z mnohoúhelníků, a na ni se aplikují modifikátory, mění arametry jednotlivých modifikátorů nebo přímo upravujeme objekt pomocí křivek, bodů, hran a polygonů. Výsledek je viditelný okamžitě, a to díky tomu, že vše probíhá interaktivně a hned v několika pohledech.
Obrázek 4: Zrcadlový (ray tracing) a rozptýlený (radiosita) odraz
Většina těchto programů umožňuje export a import z jiných aplikací. To je výhodné, když je potřeba vytvořit objekt, který je lepší vymodelovat v jednom programu, a poté ho importovat do dalšího, který má zase propracovanější konečnou vizualizaci neboli rendering. 3D modelovací programy jsou využívány pro různé účely, jako je například stavitelství, filmový průmysl, počítačové hry, zdravotnictví a tvorba designu nových zařízení, automobilů a dalších předmětů. Na trhu je rozsáhlá paleta 3D modelovacích programů, ale vzhledem k největší rozšířenosti a dostupnosti byly pro podrobnější představení vybrány: 3D studio Max, Rhino 3D, LightWave a Cinema 4D.
3.1
3D studio Max
3D studio Max je vyvíjeno firmou Autodesk, která je známa pod dřívějším označením Discreet a Kinetix. Program byl vyvinut pro platformu Windows jako následník 3D studia pro DOS. V současné době je na trhu už verze osm. Max se řadí mezi nejmodernější programy v tomto odvětví a je to jeden z nejvíce rozšířených modelovacích a animačních
3.1
3D studio Max
14
3D programů. 3D studio je využíváno v mnoha odvětvích, patří sem především vývoj her, prostorové vizualizace a filmové efekty. Aplikace je velmi komplexní a univerzální, protože umožňuje modelování objektů, přiřazení textur, nasvícení scény, přidání efektů, tvorbu animace a výslednou vizualizaci. Při modelování je několik způsobů tvorby: - Použití základních a rozšířených objektů, na které uživatel aplikuje boolen operace nebo modifikátory. - Polygonální modelování, kdy je základní objekt převeden na síť polygonů a uživatel provádí jeho editaci prostřednictvím bodů, hran a polygonů. - NURBS modelování, které nemá, ale nemá tolik funkcí jako například ve Rhinu 3D3. V Maxu je samostatná záložka, která se nazývá editor materiálů, kde lze použít standardní materiály nebo si vytvořit vlastní. Při tvorbě materiálu máme možnost přiřadit mu texturu, průhlednost, odraz a lom světla apod. Použitím modifikátoru UV mapping dosáhneme přesného potažení objektu texturou. UV jsou vlastně souřadnice, které definují polohu textury vzhledem k objektu ve dvou osách, naproti tomu osy XYZ určují polohu například objektu vzhledem k scéně jako celku.
Obrázek 5: Uživatelské prostředí programu 3D studio MAX
3
3D grafická aplikace používaná pro tvorbu trojrozměrných obrázků[kapitola 4.2].
3
METODICKÁ VÝCHODISKA PRÁCE
15
Pro realistické nasvícení scény se používají bodová, směrová nebo globální světla. Každé světlo má spoustu nastavení, jako je například intenzita, způsob stínování, dosah světla, atmosférické efekty atd. Pro konečnou vizualizaci je k dispozici spousta nastavení v rozmanitém renderovacím menu a kromě standardního renderingu lez použít například i populární Mental ray4, který dotváří realističnost výsledné scény. Pro vizualizaci lze též použít zásuvné moduly. Dalším významným rysem 3D studia je skriptovací jazyk, který se nazývá MAXScript. Slouží k rozšíření a přizpůsobení dostupných pracovních nástrojů[2].
3.2
Rhino 3D
Rhino 3D je soware pro 3D grafiku a modelování, který vyvíjí firma McNeel & Associates. Program se přímo specializuje na NURBS modelování neboli modelování ploch volného tvaru, což se týká hlavně oborů jako jsou design a strojírenství. Aplikace umožňuje tvorbu, úpravu, analýzu a export NURBS křivek.
Obrázek 6: Uživatelské prostředí programu Rhino 3D
Program se těší velkému rozšíření mezi uživateli, kvůli poměrně nízké ceně, lokalizace do mnoha jazyků a kompatibilitě s jinými 3D aplikacemi, protože podporuje ohromné množství importních a exportních formátů. Objekt je velmi často vytvořen v Rhinu a potom exportován do programu s propracovanější vizualizací. Přestože byly pro Rhino vytvořeny zásuvné moduly pro realističtější vzhled a animaci, nedosahují stejné kvality vizualizace jako například v 3D studiu MAX. 4
Renderovací algoritmus podporující Ray tracing a Global illumination.
3.3
16
Cinema 4D
Další významná přednost této aplikace vychází už z toho, že pro definování plochy využívá NURBS křivek, tím pádem je proložená plocha definovaná matematicky, narozdíl od polygonálního modelování, kde jakékoliv zakřivení je tvořeno množstvím polygonů. Čím více polygonů tím přesnější vykreslení, ale také náročnější na výpočet. Rhino využívá polygony obvykle pouze při exportu do jiného programu[10].
Obrázek 7: Uživatelské prostředí programu Rhino 3D
3.3
Cinema 4D
Cinema 4D je 3D grafická aplikace, která umožňuje procedurální a polygonální modelování, tvorbu animace, nasvícení scény, přiřazení materiálu a konečnou vizualizaci. Program je používán ve filmu, televizi, reklamě, vědecké simulaci nebo architektuře a je produktem německé firmy Maxon. Pracovní prostředí je velmi flexibilní a uživatel si je může poskládat dle své chuti. Každé položce nebo nabídce lze přiřadit vlastní jméno, což usnadní orientaci v programu. V programu lze vytvářet standardní parametrické objekty jejichž struktura je jednoduše upravitelná, které je možno převést na polygonální síť jako základ komplikovanějších objektů nebo aplikovat dostupné modifikátory. Při úpravě objektu tvořeného polygony se upravují body, hrany a polygony a používají se funkce dostupné v jednotlivých pod-objektech. Stejně tak jako v jiných významných aplikacích i v Cinema 4D lze tvořit animace. Časová osa umožňuje organizovat a manipulovat objekty ve scéně a animovat téměř všechny parametry.
3
METODICKÁ VÝCHODISKA PRÁCE
17
Od předposlední verze programu lze také využít skriptovací jazyk, který se zapisuje do integrovaném editoru[3].
3.4
LightWave
LightWave je 3D modelovací program určení pro modelování, animaci a vizualizaci. Program byl zpočátku vyvíjen pro platformu Amiga a až poté byl vytvořen pro Windows, Mac OS X a dokonce i Linux. V současné době je LightWave vyvíjen firmou NewTek a na trhu je dostupná už verze 8.5. Zřejmě zásadní rozdíl kterým se program odlišuje od ostatních 3D aplikací je, že se skládá ze dvou nezávislých programů. Jeden je určen pro modelování a druhý pro tvorbu animace. Dále je zde oddělená aplikace pro vizualizaci, která umožňuje multi-procesorový rendering. Stejně tak jako v programu 3D studio max lze použít skriptovací jazyk, který je založen na jazyku C. Pro LightWave je dostupných spousta zásuvných modulů[6]. Výběr programů pro analýzu modelovacích technik Vzhledem k tomu, že podrobněji analyzuji polygonální a NURBS modelování, vybral jsem programy, které se hodí pro dané srovnání nejlépe. Pro modelování pomocí těchto dvou technik, byly použity programy 3D studio Max a Rhino 3D. Program Rhino bylo vybrán pro modelování pomocí NURBS, protože je to aplikace přímo vyvíjena pro tento druh modelování a na scéně trojrozměrné tvorby nemá v tomto směru obdoby. Program 3D studio Max byl naopak zvolen pro modelování pomocí polygonů, protože umožňuje převod standardních parametrických objektů na polygony. Max má velmi dobře propracovanou editaci objektů pomocí bodů, hran, polygonů a uživatel může na objekty aplikovat jednotlivé modifikátory při práci s těmito pod-objekty. Ve výsledku je na editovaný objekt, který je složen z polygonů, použit modifikátor, který vyhladí jeho strukturu. Oba dva programy dostaly také přednost vzhledem k jejich snadnější dostupnosti než ostatní aplikace. Program Max díky jeho věrnosti, a tím pádem velké rozšířenosti na operačním systému Windows i mezi „obyčejnými smrtelníky“, a Rhino vzhledem k jeho jednoznačné specializaci.
3.5
Analýza vybraných 3D programů
3D studio Max a Rhino 3D jsem vybral jako nástroje pro analýzu modelovacích technik. Nyní se zaměřím na srovnání jejich uživatelského prostředí a možnosti, které nabízí v průběhu vytváření 3D scény. Srovnání se nebude týkat jejich modelovacích postupů, protože ty jsou analyzovány v dalších kapitolách. Zaměřil jsem se na pracovní prostředí, ovládání, texturování a nasvícení scény. Musím podotknout, že Rhino je program zaměřený především na modelování a dá se předpokládat, že v nastavení parametrů pro výslednou vizualizaci bude zaostávat za 3D studiem. Proto jsem vycházel z Rhina a možnosti podobného nastavení jsem hledal potom v Maxu.
3.5
Analýza vybraných 3D programů
18
U pracovního prostředí jsem hodnotil rozmístění ovládacích panelů a pohledů a možnosti jejich nastavení, rychlost nalezení požadované funkce, jazykovou podporu a nápovědu. Ovládání bylo srovnáváno na základních funkcích jako je tvorba nových objektů, změna jejich parametrů, posun, rotace a měřítko. Hodnoceno bylo i ovládání jednotlivých pohledů, protože sledování objektů z jednotlivých stran při jejich úpravě hraje také významnou roli. Texturování bylo omezeno na funkce a změny parametrů, které poskytuje Rhino. Srovnával jsem možnost přiřazení barvy respektive textury, odlesky, průhlednost atd. Nasvícení scény bylo hodnoceno dle dostupnosti jednotlivých světel, nastavení barvy světla, možnosti vrhání stínů, intenzity apod. Závěrem jsem vytvořil identickou scénu v obou programech. Nejdříve jsem nastavil textury a nasvícení v Rhinu, stejné nastavení se pokusil simulovat v 3D studiu a výstup z obou programů je na obrázku 8.
3.5.1
Pracovní prostředí
Rhino 3D Po otevření Rhina je na levé straně menu, které umožňuje tvorbu bodů, křivek, tvarů, těles, ale i jejich editaci do které patří například přidávání a ubírání bodů, ořez, prodloužení, spojení, rozdělení apod. U některých ikon je v pravém dolním rohu trojúhelník, který symbolizuje, že daná ikona má ještě další volby, pokud tedy kliknu například na tělesa rozvine se mi malé menu s nabídkou dalších těles. Obrázky, které symbolizují jednotlivé ikony, jsou výstižně nakresleny a každý uživatel na první pohled pozná k čemu ikona slouží. V horní části programu je standardní lišta, kterou lze nalézt u všech programů pod Windows. V jednotlivých nabídkách je umístěna práce se soubory, úprava objektů v prostoru 3D scény, nastavení pohledů, volby vlastního programu a nápověda. Jsou zde také umístěny nabídky obsažené v levém menu programu, ale s dalšími volbami, které nejsou kvůli místu nebo občasnému používání zahrnuty právě tam. Musím podotknout, že při delší práci v Rhinu jsem využíval už jenom nabídky z horního menu, protože mě to připadalo rychlejší i když začátečník určitě ocení ikony v levém menu. Pod vysouvacími nabídkami v horní části je konzole, v které se definují jednotlivé parametry při tvorbě objektů. Pokud známe jméno nějakého příkazu přímo zpaměti není potřeba jej vyhledávat v nabídce, ale pouze zadat zde. Pod příkazovým řádkem je další jednořádkové ikonové menu, kde jsou ikony pro ovládání jednotlivých pohledů, správce objektů, vrstvy a rendering. Toto menu je oproti nabídce v levé části využíváno velmi často, pokud uživatel nepoužívá klávesové zkratky například při práci s pohledy. Libovolně lze také upravovat jednotlivé pohledy, které nemusí potom tvořit výchozí čtvrtiny obrazu. Ve spodní části je umístěn uchopovací režim, který je při práci v Rhinu nepostradatelným nástrojem.
3
METODICKÁ VÝCHODISKA PRÁCE
19
Největší výhodu kterou ocení především začátečníci při používání Rhina, je možnost volby českého jazyka do celého jeho uživatelského prostřední včetně jeho kompletní české nápovědy a dostupných českých tutoriálů. Nápověda je dobře propracovaná a jsou zde podrobně vysvětleny všechny postupy. 3D studio MAX Jelikož 3D studio je program, který má více propracované některé části než Rhino, tak už po otevření program působí složitěji. Je zde více nabídek a jednotlivých menu. Naproti Rhinu je umístěna většina ovládacích částí spíš k pravé části programu, kde je jedno velké menu se spoustou záložek. V pravém menu jsou umístěny záložky pro tvorbu objektů (základní a rozšířená tělesa, tvary, křivky, světla, kamera atd.), jejich editaci a viditelnost ve scéně. V horní části jsou stejně jako v Rhinu standardní nabídky pro práci se soubory, objekty ve scéně, nastavení programu, nápověda a další nabídky totožné se záložkami v pravé části programu. V Rhinu jsem výlučně používal nabídky s horního menu, v Maxu naopak pouze větší a propracovanější menu v pravé části. Ve vrchní části programu jsou pod klasickými nabídkami další ikony pro transformaci objektů, editor materiálů a nastavení renderingu. V pravém dolním rohu jsou ikony pro práci s jednotlivými pohledy. Trojrozměrné pohledy je možno rozmístit dle potřeb uživatele, kdy program sám nabídne seznam nejčastěji používaných rozložení. Program narozdíl od Rhina nemá počeštěné uživatelské prostředí, ale opět je v něm umístěna plnohodnotná nápověda, která při znalosti angličtiny popíše každou funkci programu.
3.5.2
Ovládání
Pro srovnání ovládání programu jsem stanovil jednoduchý postup pro tvorbu a editaci krychle. Postup se skládal z následujících kroků: - vytvoření krychle o rozměru 10x10x10 jednotek, - rotace o 35° dle osy Y, - změna délky strany podél osy X na 7 jednotek, - změna délky strany podél osy Y na 40 % její délky, - posunutí k počátku souřadného systému. Rhino 3D a 3D studio MAX - V Rhinu jsem hned zpočátku vytvořil krychli v daných rozměrem, naopak v Maxu je rychlejší nejprve umístit jakkoliv velkou krychli do prostoru a té potom upravit parametry, přepsáním tří hodnot. Pokud bych postupoval v Rhinu stejně jak v Maxu, každý rozměr zvlášť bych musel upravit funkcí měřítko.
3.5
Analýza vybraných 3D programů
20
- Před otočením v 3D studiu jsem musel nejprve změnit polohu orientačního bodu krychle, protože otáčení probíhá vždy kolem orientačního bodu objektu. Potom jsme zadal počet stupňů do pole otočení kolem osy Y. V Rhinu žádný takový krok před otočením objektu nebyl nutný, pouze se definují referenční body a úhel otočení. - Změna délky strany v Maxu dle osy X jsem provedl pouze přepsáním hodnoty na 7 jednotek. V Rhinu se opět definovaly dva referenční body a délka strany na ose X. - Při změně měřítka v Maxu se standardně pracuje v %, změnu strany bylo možno provést bez problémů. Naopak Rhino nemá žádné poměrové hodnoty, každá délka je jasně definována a proto i nová délka úsečky musí být spočítána ručně a potom přímo zadána nová hodnota. - Pro posunutí kvádru na počátek souřadného systému jsem v Rhinu použil uchopovací režim, kterým jsem nejprve definoval první referenční bod v rohu objektu a konečný referenční bod jsem zadal 0,0. V 3D studiu jsem stejně jako v Rhinu použil uchopovací režim a umístil objekt na střed obdobným způsobem. Práce s pohledy je v obou programech téměř identická, v Rhinu bych pouze uvítal přiblížení a oddálení ve všech pohledech zároveň.
3.5.3 Texturování Rhino 3D Jelikož Rhino není primárně určené pro složitou vizualizaci, texturovací možnosti jsou zde pouze v základní formě. Ve vlastnostech materiálu lze nastavit barvu nebo přiřadit texturu, odraz objektu a průhlednost. Odraz a průhlednost jsou v rozsahu od 0 do 100 %. Pro elementární nastavení materiálu jsou tyto možnosti dostačující. 3D studio MAX Editor materiálů v Maxu je mnohem složitější nabídka než v Rhinu. Samozřejmě zde lze upravit a simulovat parametry, které byly zmíněny v Rhinu, ale i mnohem víc. Pro docílení realistického materiálu je potřeba si projít záložku opravdu důkladně. V 3D studiu lze nastavit barvu materiálu v přímém nasvícení, při světle kolmo k objektu, kdy dochází k odrazům a v okolním světle. V dalším nastavení je možné upravit rozložení odlesků, přímého nasvícení a stínů. Na začátku se zvolí typ materiálu a ten se potom ještě doladí pomocí těchto hodnot. Průhlednost zde je podstatně rozšířena, kdy správným nastavením lze docílit toho, že objekt bude například pozvolna přecházet do průhlednosti od jeho středu k okrajům nebo po přiřazení obrázku jako masky, bude průhledný pouze v určitých částech. V editoru materiálů lze vytvořit nepřeberné množství textur, zaleží pouze na uživatelově fantazii a znalosti programu.
3
METODICKÁ VÝCHODISKA PRÁCE
3.5.4
21
Nasvícení scény
Rhino 3D V Rhinu je možnost vybrat z kuželového, bodového, plošného a lineárního světla. Při nasvícení scény kuželovým světlem se osvětlení rozšiřuje kuželovitě donekonečna, ale intenzita světla neklesá. Intenzita klesá od středu do jeho krajů a za okrajem je nulová, proto umístěné objekty ke středu světla jsou nasvíceny nejjasněji. U kuželového světla lze nastavit od jaké hranice začne intenzita světla klesat. U bodového světla je světlo vyzařováno všemi směry. Kuželová a bodová světla jsou jedny z nejčastěji používaných světel ve scéně. Plošné světlo slouží k osvětlení celé scény a dalo by se říci, že simuluje denní světlo. Lineární světlo je podobné kuželovému s tím rozdílem, že nemá tvar kuželu a zdroj světla je tedy po celé délce konstantní. Stejně jako u textur i u světel je v Rhinu pouze základní nastavení. Lze upravovat barvu a intenzitu světla, intenzitu stínů a u kuželového světla tvrdost okrajů, což znamená definování úrovně od které se začne světlo ztrácet na intenzitě. Nastavení je jednoduché a výstižné. 3D studio MAX Max nabízí naprosto totožná světla jako Rhino, ale s větším množstvím dalšího nastavení. Intenzitu kuželového světla lze snižovat nejen po jeho obvodu, ale i co se týče jeho dosahu. Od určitého místa ve směru světelného zdroje se intenzita začne snižovat k nule. Tvar světla lze dále změnit z kužele na obdélník nebo mu přiřadit obrázek, který se promítá na plochu. U stínu světel v Rhinu se nastavuje pouze jeho intenzita, v 3D studiu je možné vybrat pět druhů stínů dle rozsahu scény, průhlednosti objektů nebo rychlosti renderingu.
Obrázek 8: Vyrenderovaná scéna v programech Rhino 3D a 3D studio Max
3.5.5
Shrutí a doporučení
Jak jsem předpokládal na začátku, Rhino už na první pohled působí snadnějším dojmem na ovládání, protože nemá tolik možností jako 3D studio, především v oblasti texturování objektů a nasvícení scény. Rhino má všechny ovládací prvky soustředěny především na
3
22
METODICKÁ VÝCHODISKA PRÁCE
levé straně pracovní plochy a Max přesně naopak, v průběhu práce jsem v tom neviděl žádnou výhodu či nevýhodu a bylo to pouze o zvyku. Oba dva programy vynikají dobrou prací s pohledy i co se týče klávesových zkratek, které jsou standardně dány nebo je lze definovat. Pro základní volby jsem v Rhinu využíval spíše strohé nabídky v horní liště a v 3D studiu menu na pravé straně. Rhino láká uživatele českým prostředím, nápovědou a spoustou dostupného výukového materiálu. Naučit se ovládat Rhino je tedy mnohem snazší úkol než Maxe. Prostředí 3D studia je v angličtině a možnost práce s ním je rozsáhlejší. V programu je umístěn ale dobře propracovaný anglický help, kde lze dohledat jakoukoliv funkci nebo tlačítko. V průběhu ovládání jde znát, že u Rhina je kladen důraz na přesnost a využívání uchopovacího režimu je nutností. Při definování konstrukčních křivek, musí být dodržena přesná návaznost, jinak by nedošlo k proložení plochy. Tato skutečnost byla dobře znát v testovacím postupu, kdy vždy musí být definováno o kolik nebo na jakou hodnotu se daná hodnota bude měnit. V 3D studiu lze použít při změně měřítka procenta, na druhé straně v Rhinu musí být při změně jakékoliv hodnoty definovány referenční body, které určují délku před a po úpravě. Úprava objektů v Rhinu zabere trochu více času, ale zase se je naprosto přesná, což je při modelování s NURBS křivkami vyžadováno. Změna parametrů objektu je v 3D studiu obecně rychlejší a uživatelsky přívětivější. Nastavení materiálu v Rhinu je na základní úrovni, protože program je primárně určen k modelování, ale i toto základní nastavení bohatě stačí. Nastavení všech hodnot je velmi intuitivní a spolu s českým prostředím se v něm rychle zorientuje i začátečník. V Maxu je naopak editor materiálů velmi propracovaná záložka a bez spolupráce s nápovědou nelze v některých případech ani určit efekt změny nastavení. Volba materiálů v Maxu tedy v plném rozsahu pokrývá možnosti Rhina. Stejně jako u nastavení materiálů i u nastavení světel 3D studio plně pokrývá možnosti Rhina a nabízí něco navíc. V Rhinu lze stín objektu ovlivnit pouze snížením nebo zvýšením jeho intenzity, naopak v Maxu mu lze přiřadit barvu a způsob výpočtu stínu dle rychlosti a zvoleného renderovacího algoritmu. 3D studiu naproti Rhinu umožňuje měnit intenzitu světla ve směru jeho zdroje nebo také přiřadit světlu obrázek určený k promítání a efekty jako volumetrické světlo nebo mlha. Stručný přehled bodového hodnocení je v tabulce 1. Bodování je v rozsahu 1-5, kdy pět bodů znamená nejlepší výsledek.
Uživatelské prostředí Ovládání Texturování Nasvícení scény Průměrné body
Rhino 3D 5 3 3 3 3,5
Tabulka 1: Hodnocení programů
3D studio Max 3 4 5 5 4,25
4
ANALÝZA MODELOVACÍCH TECHNIK
4
23
Analýza modelovacích technik
Polygonální a NURBS modelování patří do oblasti povrchového modelování, což je vlastně volnější forma tvorby objektu než pomocí parametrické modelování. Slouží ke tvorbě zakřivených objektů, které nelze vytvořit pomocí standardních geometrických těles a Boolean operací. Polygonální a NURBS modelování bylo vybráno a podrobeno bližší analýze, hlavně kvůli jeho nejrozšířenějšímu používání v tomto druhu modelování.
4.1
Polygonální modelování
Polygonální modelování je způsob tvorby objektů, kdy jsou jednotlivé objekty představovány pomocí mnohoúhelníků neboli polygonů. Tento postup se využívá především v počítačových hrách, kdy jsou jednotlivé snímky zobrazovány pomocí scanline renderingu, což je algoritmus, který znamená, že je renderován pixel po pixelu a až je zobrazen celý řádek přechází se na řádek další[8]. Základní prvek, který reprezentuje tento způsob modelování, je jeden vrchol, v trojrozměrném prostoru nazývaný bod (vertex). Pokud spojíme dva vrcholy přímkou, dostaneme okraj neboli hranu (edge). Spojením tří bodů pomocí hran dostaneme trojúhelník což je nejjednodušší mnohoúhelník, který bývá v určitých editačních strukturách nazýván tváří (face). Složitější polygony můžou být tvořeny z více trojúhelníků nebo jako jednotlivý mnohoúhelník z více než tří bodů a hran mezi těmito vrcholy. Polygon se čtyřmi stranami bývá obecně označován jako čtverec nebo čtyřúhelník. Skupina polygonů spojených navzájem pomocí sdílených hran tvoří polygonální síť neboli prvek. V 3D studiu MAX používáme pro editaci objektů několik typů. Typy editace závisí na pod-objektech jednotlivých objektů a jsou uvedeny v tabulce 1. Typ objektu Mesh Poly Spline Patch
Pod-části Vertex, Edge, Face, Polygon, Element Vertex, Edge, Border, Polygon, Element Vertex, Segment, Spline Vertex, Edge, Patch, Element, Handle
Tabulka 2: Typy objektů a jejich pod-objekty
V mnoha případech pokud chci editovat objekt pomocí jeho pod-objektů musím objekt převést na editovatelný objekt. To můžu učinit dvěma způsoby. Buď objekt převedu na editovatelný objekt nebo na něj použiji jeden z modifikátorů. Oba dva způsoby vedou ke stejnému cíli, ale jsou mezi nimi zásadní rozdíly, které jsou uvedeny v tabulce 2.
4.2
24
Modelovací metody v 3D studiu Max
Metoda
Výhody
Nevýhody
editovatelný objekt
účinnější možnost animace pod-objektů
ztráta základních parametrů
modifikátor
udržování základních parametrů
méně účinný nemožnost animace pod-částmi
Tabulka 3: Možnosti převodu na editovatelný objekt a jejich výhody a nevýhody
I když po použití modifikátoru je možnost měnit výchozí parametry objektu, program nás upozorní, že dojde k narušní topologie tvorby objektu. V mnoha případech se proto poruší změněná geometrie, provedená až po aplikování modifikátoru. Proto je výhodnější převést celý objekt na editovatelný objekt bez možnosti kroku zpět, protože základní změnu parametrů je možné simulovat úpravami pod-objektů. V 3D studiu Max je několik editačních struktur objektů a podle toho se trochu liší práce s jeho pod-objekty. Budu se zabývat pouze editable poly a jeho výhody popíšu v následujícím odstavci. Editable poly Pro modelování v Maxu jsem vybral právě editable poly, protože se pro tento způsob tvorby modelu hodí nejvíce. Podobně jako Rhino umí nejlépe pracovat s NURBS křivkami, stejně tak 3D studio nejlépe pracuje s polygony. Ve skutečnosti jde o intuitivní způsob modelování, protože přesně nevidím, co modeluji. Výsledný objekt vidím až po aplikaci vyhlazovacího modifikátoru. Tato metoda je ale velmi snadná pro pochopení, protože se pracuje pouze s body, křivkami a mnohoúhelníky. Stejně tak jako v Rhinu je možné modelovat tělesa pomocí NURBS nebo editovatelného meshe, pro výsledný rendering je však potřeba použít polygony, takže jsou všechny objekty převáděny na mnohoúhelníky. Jak už bylo zmíněno, u polygonálního modelování se používají u každého objektu tzv. pod-objekty (pod-části). Editable poly se skládá z bodů, hran, obrysů, polygonů a prvků. Nejvíce používané pod-objekty jsou body, hrany a polygony. Techniky editace v těchto pod-částech jsou podobné, ale dopad na celkový objekt není vždycky stejný[7].
4.2 4.2.1
Modelovací metody v 3D studiu Max Pod-objekt bod
Bod je základní prvek v trojrozměrném prostoru a je používán především pro změnu tvaru. Základní práce s body zahrnuje přidávání, ubírání, posouvání bodů a následující funkce.
4
ANALÝZA MODELOVACÍCH TECHNIK
25
Break Tato funkce vytvoří takový počet bodů, kolik hran se sbíhalo do bodu, na který se funkce aplikovala. Příklad – obrázek 9. Weld a Target weld Weld je vlastně opak break. Více bodů v určité vzdálenosti od sebe spojí dohromady. Target weld slouží ke spojení právě dvou konkrétních bodů. Chamfer Funkce slouží ke zkosení rohu, důsledkem toho dojde k přidání dalšího mnohoúhelníku, který vytvořil toto zkosení. Příklad – obrázek 9.
Obrázek 9: Aplikace funkce Break a Chamfer na rohový bod
4.2.2
Pod-objekt hrana
Hrana vznikne spojením dvou bodů, což znamená, že je to jejich nadřazená část. Úprava hran se používá především když má objekt správný tvar, ale je potřeba, aby některé části byly například méně vyhlazené. Hrany lze stejně jako body rozpojit, spojit, vymazat nebo naopak přidat. Extrude Extrude slouží k vytažení hrany nebo několika hran. Vytažení se používá směrem z objektu ven, ale i dovnitř objektu. Chamfer Chamfer přidává objektu detaily, po aplikaci vyhlazení. Tato funkce je nejčastěji využívána právě při práci s hranami. Chamfer rozdělí hranu na dvě, a tím vytvoří nový polygon. Když je hrana na okraji objektu, dochází ke zkosení. Příklad - obrázek 10.
4.2
Modelovací metody v 3D studiu Max
26
Connect Funkce vytvoří propojovací hranu mezi dvěma hranami. Connect lze aplikovat i na více než dvě hrany zároveň. Příklad - obrázek 10.
Obrázek 10: Aplikace funkce Chamfer a Connect na hrany objektu
4.2.3
Pod-objekt polygon
Polygon vznikne spojením nejméně tří hran. V hierarchii objektu je nadřazen bodu a hraně. Face neboli trojúhelníky a mnohoúhelníky se nazývají dohromady polygony. Při práci s jednotlivými polygony, se zřídkakdy podaří změnit tvar objektu. Při tvorbě objektu je třeba si dávat pozor na to, aby model byl tvořen pouze ze čtyřúhelníků. Někde se můžou vyskytnout trojúhelníky, ale v žádném případě pětiúhelníky nebo větší mnohoúhelníky. Extrude Při vytažení polygonů jsou dostupné tři volby. Všechny vybrané polygony jsou vytahovány jedním směrem, každý polygon je vytažen podél své kolmice nebo každý polygon je vytažen podél své kolmice a jednotlivě. Bevel Bevel je kombinace funkcí Extrude a Outline. Outline existuje jako samostatná funkce, která mění měřítko polygonu. Bevel tedy nejprve vytáhne polygon podél jeho kolmice a potom je proveden Outline. Inset Inset je podobná funkci Outline ale s tím rozdílem, že vytvoří nový polygon. Polygon vznikne uvnitř polygonu z kterého se vycházelo. Příklad – obrázek 11. Slice plane Jedna z nejdůležitějších funkcí v práci s polygony. Slice rozřízne vybrané polygony podle pomocné plochy, kterou lze přemisťovat nebo s ní rotovat, a tím pádem měnit místo řezu. Příklad – obrázek 11.
4
ANALÝZA MODELOVACÍCH TECHNIK
27
Obrázek 11: Aplikace funkce Inset, Slice plane a Cut na polygony objektu
Cut Tato funkce umožňuje kreslit hrany do polygonů. Pokud chci vytvořit nějaký tvar a potom ho například vytáhnout použiji Cut. Při používání Cut by hrany měli vycházet už z existujících hran, jinak dojde k rozpadu tvaru objektu. Příklad – obrázek 11.
4.3
NURBS modelování
Elementární druhem křivek používaných v počítačové grafice jsou křivky polynomiální. Stupeň polynomiální křivky je určen podle nejvyšší sumy všech exponentů u jednotlivých členů křivky. Nejčastěji jsou používané křivky třetího stupně tzv. kubiky, protože poskytují dostatečné spektrum tvarů, jsou snadno manipulovatelné a jejich výpočet je nenáročný. Křivky vyššího stupně mohou způsobovat nežádoucí vlnění, oscilace a jsou náročnější na výpočet. Modelování probíhá tak, že je definováno několik řídících bodů, a z jejich polohy je určen průběh křivky. Stupeň polynomiální křivky určuje počet změn směru v průběhu křivky. V případě kubiku tzn. křivek třetího stupně, je možnost zvratů ve směru křivky rovna dvěma nebo nule. Pokud je křivka stupně lichého, tak počet změn směru je sudé číslo a vždy menší než stupeň křivky. Existují dva základní druhy interpretace řídících bodů křivky: interpolace a aproximace. Při interpolaci generovaná křivka prochází danými body, naopak u aproximace je tvar křivky určen řídícími body, ale křivka jimi už procházet nemusí[11][12].
4.3.1
Interpolační křivky
Na intervalu I je dána uspořádaná n-tice tzv. opěrných bodů: al = (x1, y1), a2 = (x2, y2), ... , an = (xn, yn). Interpolační funkce je funkce, která splňuje požadavek: yi = f (xi), i = 1, ... , n. Interpolační křivka k dané množině bodů je tedy taková křivka, která jimi prochází.
4.3
28
NURBS modelování
4.3.2
Aproximační křivky
Aproximace bodů znamená vytvoření takové křivky, která je těmito body řízena. Není kladen důraz na procházení křivky opěrnými body a to ani prvním a posledním. Křivka může být řízena body (řídící polygon) nebo body a vektory. Metoda, která křivku vytváří, zaručuje její vlastnosti (např. hladkost nebo spojitost). V počítačové grafice se nejčastěji využívají aproximace po částech, a to polynomy třetího stupně tedy kubikami. Kubiky jsou dostatečně pružnými křivkami, aby se jimi dalo vyjádřit téměř vše, co je v praxi potřeba. Dalším pozitivním faktorem je, že stupeň polynomu tři umožňuje rychlé generování výsledné křivky, což je vhodné pro interaktivní tvorbu[12].
Obrázek 12: Interpolační a aproximační křivka
Bézierovy křivky Bézierova křivka n-tého řádu vznikne z n+1 bodů řídicího polygonu P0, P1, ... , Pn. Nejpopulárnější a nejčastěji používané aproximační křivky, jsou Bézierovy kubiky. Bézierova kubika vychází z prvního řídícího bodu, končí v posledním a je zadána čtyřmi kontrolními body: P0, P1, P2, P3. V případě spojení dvou Bézierových křivek, musí být
Obrázek 13: Bézierova kubika a spojení dvou Bézierových kubik
4
ANALÝZA MODELOVACÍCH TECHNIK
29
zajištěna jejich spojitost a hladké spojení. Tato skutečnost nastává v případě, že poslední bod předchozího oblouku je identický s prvním následujícího nebo křivka prochází posledním a prvním bodem. Z toho plyne, že druhý bod následující křivky je určen dvěma posledními body křivky předchozí. Jedna z dalších vlastností, která je vždy zaručena u typu těchto křivek, je, že výsledná křivka bude vždy ležet v tzv. konvexní obálce bodů řídicího polygonu. Z této vlastnosti plyne i podstatná výhoda nasazení této metody v technické praxi. Nepřirozené vlnění výsledných křivek je vždy v mezích konvexní obálky[12]. Algoritmus de Casteljau Je to jeden z algoritmů, který se používá pro výpočet Béziérovy křivky. Při použití tohoto algoritmu se křivka rozdělí na dvě části a efektivní výpočet spočívá v rekurzívním dělení křivky tak dlouho, dokud není „dostatečně rovná“[12]. Racionální Bézierovy křivky Racionální Bézierovy křivky vzniknou zobecněním Bézierových křivek. Při standardním zadávání Bézierových křivek udává uživatel řídící polygon a program podle jeho požadavků buď proloží body křivkou patřičného řádu nebo výslednou křivku složí z křivek řádu nižšího. Jestliže chce uživatel změnit tvar křivky, musí vybrat bod a změnit jeho polohu. Tento způsob změny tvaru není vždy výhodný. Pokud se pracuje v rovině, nemusí se tento problém projevit natolik jako v trojrozměrném prostoru, kdy identifikace jednotlivých bodů není nikterak snadná. Řídící body Racionální Bézierovy křivky mají proto přiřazené reálné číslo jehož změnou se mění tvar křivky. Toto číslo se také nazývá váha bodu. Racionální Bézierova křivka je určena posloupností bodů P0, P1, ..., Pn, a posloupností reálných čísel w 0, w l, ..., w n. V obecných Bézierových křivkách je w pro všechny řídící body polygonu rovno 1. Největším přínosem racionálních Bézierových křivek je bezesporu možnost manipulace s tvarem křivky bez změny polohy bodů řídicího polygonu[12].
Obrázek 14: Změna váhy řídícího bodu z 1 na 5
4.3
NURBS modelování
30
Spline křivky Spline křivky jsou určitým zobecněním polynomiálních interpolací a aproximací. Tyto křivky jsou definovány z jednotlivých polynomů a je zaručena spojitost derivací v navazovaných bodech. Teorie spline křivek je velice obsáhlá a patří spíše do matematiky než do počítačové grafiky[12]. Coonsova kubika Coonsova kubika se zadává stejně jako kubika Bézierova čtyřmi řídicími body P0, Pl, P2, a P3. Největší výhoda Coonsových kubik nastává v případě, když je použijeme pro skládání aproximačních křivek. Uvažujme řídicí polygon složený z bodů P0, P1, ..., Pn. Bude-li se výsledná křivka skládat z Coonsových oblouků vždy tak, že pro jeden oblouk se použijí vrcholy P0, P1, P2, P3, pro další P1, P2, P3, P4 atd., vznikne křivka, která se nazývá B-spline. B-spline má ve všech vnitřních bodech spojitost druhého řádu. Z hlediska konstrukce je pro tímto způsobem vytvářenou křivku výhodné i to, že změnou jednoho bodu dojde pouze k lokální změně čtyř bodů, jejichž konstrukce se bod účastní. Coonsův B-spline se také nazývá Uniformní neracionální kubická B-spline[12]. NURBS – Non–uniform rational B–splines Vývojem NURBS se začali zabývat inženýři už v padesátých letech, když potřebovali přesně vystihnout povrchy jako jsou karoserie automobilů nebo trupy lodí. Průkopníky těchto křivek, kteří pracovali téměř souběžně, byli Pierre Bézier, který pracoval jako inženýr v Renaultu a Paul de Casteljau, který pracoval v Citroenu, ve Francii. Navzájem však o své práci nevěděli. Protože výsledek své práce reprezentoval Bézier, dnešní počítačová grafika zná křivky řízené řídícími body polygonu jako Béziérovy křivky a de Casteljau je spojováno s algoritmy pro výpočet těchto křivek. V průběhu šedesátých let se přišlo na to, že Non-uniform rational B–splines je vlastně zobecněná Béziérova křivka, která může být považována za Uniform non-rational B-splines. Pokud jsou tedy NURBS křivky zobecnění Bézierových křivek, potom všechny Bézier křivky jsou NURBS, ale ne všechny NURBS jsou Bézier křivky. Neuniformní racionální B-spline křivky jsou dvojím zobecněním B-spline křivek. Neuniformní znamená, že vzdálenost jednotlivých uzlů nemusí být v tomto případě konstantní. Racionalita představuje, že jednotlivým uzlům může být přidělena jiná váha. V praxi jsou nejčastěji používány NURBS třetího stupně, protože nejsou tak náročné na výpočet jako křivky vyšší úrovně. Vlastnosti NURBS křivek: - křivky procházejí posledním a prvním bodem řídícího polygonu, - leží v konvexní obálce svého řídicího polygonu, stejně tak jejich jednotlivé segmenty leží v obálkách svých řídicích polygonů, - posunutím nebo změnou váhy některého z řídících bodů, se změní pouze tvar v této části, která je tímto bodem generována, - tvar křivky lze měnit odebráním či přidáním bodů ke křivce, - umožňuje přesné vyjádření kuželoseček[12][13].
4
ANALÝZA MODELOVACÍCH TECHNIK
4.4
31
Modelovací metody v Rhinu 3D
U objektů lze zobrazit řídící a editační body a pomocí jejich úpravy a umisťování lze upravovat tvar objektu. Tyto operace nazýváme úpravy na úrovni bodů. Můžeme přemisťovat body polygonálních sítí, křivek a ploch. Křivky jsou v Rhinu reprezentovány neuniformními racionálními B-spliny. Tvar NURBS křivek určují tři veličiny: - seznam bodů nazývaných řídící body, - stupeň, - seznam hodnot nazývaných uzly. Pokud změníme nějakou z těchto veličin dojde ke změně tvaru křivky. Pokud budeme aplikovat teorii bodů a křivek přímo na Rhino, vychází nám několik skutečností o řídících bodech, editačních bodech a uzlech: - řídící body většinou neleží na křivce, - editační a uzlové body leží vždy na křivce, - Rhino umožňuje měnit tvar křivek a ploch pohybováním s jejich řídícími body, - uzly jsou parametry (jsou to pouhá čísla nikoliv body v prostoru), - přidáním nebo odebráním uzlů z křivky nebo plochy lze ovlivnit její chování během úprav pomocí řídících bodů. Pro jasnější představu, jak funguje úprava bodů a křivek v Rhinu použijeme následující příklad: - Na obrázku 15 je v prostoru vytvořeno několik křivek s různými stupni. Stupeň křivky je uveden v kolečku vedle křivky. - V pohledu zepředu byly vytaženy prostřední body všech křivek o pět jednotek a druhé a čtvrté body o čtyři jednotky nahoru. Na obrázku 16 je viditelné, že křivky 1 stupně se v jejich řídících bodech ostře lámou. Křivky 3 a 5 stupně jsou hladké a křivky stupně 3 mají větší křivost než stupně 5. Jednotlivé řídící body ovládají u křivek se stupněm 3 menší část křivky, naopak stupně 5 větší ovládají větší část křivky. - Pro lepší zobrazení jak stupně křivek ovlivňují jejich editaci, je na obrázku 17 těmito křivkami proložena plocha[10].
4.4
Modelovací metody v Rhinu 3D
Obrázek 15: Křivky s jejich editačními body a stupněm
Obrázek 16: Změna tvaru křivky pomocí řídících bodů
32
4
ANALÝZA MODELOVACÍCH TECHNIK
33
Obrázek 17: Křivky potažené plochou
Pro tvorbu ploch z konstrukčních křivek slouží v Rhinu několik základních funkcí. Nejvýznamnější z nich jsou uvedeny na následujících příkladech. Na levé straně obrázků jsou podkladové křivky a na pravé straně plochy z těchto křivek. Hraniční křivky Pro vytvoření plochy se nakreslí 2, 3 nebo 4 hraniční křivky, které budou definovat okolní tvar plochy. Pro přesné vytvoření tvaru je vhodné, aby se křivky v rozích vzájemně dotýkaly.
Obrázek 18: Plocha vytvořená ze čtyř hraničních křivek
4.4
Modelovací metody v Rhinu 3D
34
Tažení po 1 trase Pro tvorbu plochy jsou potřeba tři křivky. Jedna křivka udává cestu a zbylé dvě určují tvar plochy a její ohraničení.
Obrázek 19: Plocha vytvořená tažením po trase
Tažení po 2 trasách Při tažení plochy po dvou trasách nedefinují křivky jenom směr, ale také hraniční cesty na obou stranách tažení. Řezy plochy nemusí být jenom na konci nebo začátku cest, ale i v jejich průběhu. To samé platí i pro tažení po jedné trase.
Obrázek 20: Plocha vytvořená tažením po dvou trasách
Potažení křivek plochou Nejprve se vytvoří křivky, které definují tzv. průběh plochy. Pro proložení plochy, která má více detailů, je nutné definovat více křivek. Celý tento proces je zachycen na obrazcích 15, 16 a 17, když jsem prezentoval úpravu bodů křivky v Rhinu.
4
ANALÝZA MODELOVACÍCH TECHNIK
4.5
35
Modelovací postupy
Pro analýzu modelovacích metod jsem vybral karoserii automobilu, protože je složena z mnoha zakřivených ploch, ostrých hran, přechodů a otvorů. V mém případě se jednalo o automobil Audi TT. Zaměřím se pouze na přední kapotu, protože analyzovat metody na celém objektu by bylo velice zdlouhavé a ve většině případech by se použité funkce a postupy opakovaly. Modelování v programu 3D studio MAX Pro vytvoření polygonální sítě objektu je možno využít v 3D studiu mnoho různých postupů, které vychází z modelovaného objektu a jejich výběr je čistě subjektivní. V 3D studiu jsem analyzoval tři základní modelovací přístupy pro vytvoření polygonální sítě. Síť by měla co nejlépe vystihnout tvar objektu a její struktura by měla být vhodná pro pozdější editaci bodů, hran a polygonů, protože obvykle vytvářím základní tvar a až poté přidávám detaily předmětu. Pro tvorbu základní polygonální sítě můžu využít následující tři přístupy.
4.5.1
BOX modelování
Obecně se tento postup nazývá BOX modelování, ale ne vždy se musí vycházet z kvádru. Základní těleso si zvolím podle objektu, který chci modelovat, aby co nejlépe vystihovalo jeho základní tvar. Proto můžu dále použít například kouli nebo válec. Počet segmentů tělesa zvolím dle nejvýznamnějších tvarů nebo zlomů na modelovaném objektu a toto těleso převedu na editable poly. Co se týče BOX modelování, je vhodné, aby těleso mělo na počátku spíše méně segmentů, protože při vytváření základního tvaru může při editaci z více pohledů docházet k překrývání bodů a už jen vytvoření výchozího tvaru je obtížné. Při tomto postupu se snažím stále přidávat další a další detaily. Samozřejmě začínám těmi co zabírají největší část objektu. Užití BOX modelování v praxi Abych co nejvěrohodněji zachytil modelovaný objekt využiji tzv. blueprintů, což jsou nákresy automobilu ze všech stran. Nákresy jsem umístil do pohledů programu na objekty, které se nazývají plane. Na obrázku 21 jsou vytvořeny čtyři objekty plane a potaženy nákresy auta. Obrázky nákresů automobilu doporučuji v nějakém 2D grafickém programu oříznou co nejtěsněji ke kresbě auta, to znamená, že například pohled z boku je oříznutý tak, aby se kola, přední a zadní nárazník a střecha dotýkali okraje obrázku. Samozřejmě jsem dodržel i stejnou výšku a šířku u souvztažných nákresů. Na obrázku 21 je také patrné umístění blueprintů do prostoru 3D programu, kde všechny plane objekty na kterých jsou umístěny nákresy jsou vzájemně zarovnány. V dalším kroku jsem vytvořil objekt box se čtyřmi segmenty na šířku a délku a dvěma segmenty na výšku. Doporučuji méně segmentů, protože zachycení základního tvaru při hustší mřížce bylo komplikované. Přidání segmentů lze vždy simulovat dostupnými funkcemi, které ukážu v průběhu analýzy. Kvádr jsem převedl na editable poly a použil
4.5
Modelovací postupy
Obrázek 21: Objekty plane potaženy nákresy automobilu a objekt box
Obrázek 22: Základní tvar objektu s aktivovanými editačními body
36
4
ANALÝZA MODELOVACÍCH TECHNIK
37
na jeho délku modifikátor Symmetry. Přední kapota auto je zcela symetrická a stačí proto modelovat jednu část. Modifikátor ji bude zrcadlit. Poté se přepne do pod-objektu bod a taháním jednotlivých bodů v bočním, předním a horním pohledu se zachytí přibližný tvar objektu. Přibližný tvar objektu s aktivovanými editačními body je na obrázku 22. V další části postupu byla použita funkce Cut a Slice v úrovni pod-objektu hrana. Funkcí Slice se přidalo do šířky a výšky vždy po jedné hraně a Cut jsem přidal hranu do zaoblené přední části objektu. Rozdíl mezi funkcemi je v tom, že Slice řeže podle pomocného čtverce a rozdělí všechny polygony, které protíná na dva a naopak Cut je lepší použít obvykle v pohledu perspektiva, kde se postupuje od hrany k hraně a rozděluje jednotlivé polygony. Po použití těchto funkcí jsem opět přesunul body a hrany k přesnějšímu zachycení předlohy.
Obrázek 23: Přidání hran funkcí Cut (modrá) a Slice (červená)
Před tím než jsem začal přidávat další zjemňující hrany, vyřízl jsem otvor pro kolo a vytaženou část blatníku, která přesně kopíruje otvor kola. Doporučuji takto významné detaily zachytit co nejdříve, protože potom dochází ke zbytečným komplikacím s polygonální sítí v místě, kde jsou všechny polygony nakonec stejně odstraněny. V obou případech jsem použil funkci Cut v úrovni pod-objektu hrana. Po aplikaci Cut vzniklo několik nechtěných trojúhelníků, které jsem odstranil funkcí Weld a Target Weld na úrovni pod-objektu bod. Weld je vhodné použít ke svaření několika bodů ležících blízko sebe, Target Weld naopak ke spojení dvou konkrétních bodů, které leží například na stejné hraně. Na obrázku 25 je modrými lomenými čárami označena funkce Cut, červené kroužky vyznačují místo spojení bodů funkcí Weld a červeně označené polygony byly odebrány.
4.5
Modelovací postupy
38
Obrázek 24: Aplikace funkce Weld v pod-objektu bod na tři blízké vrcholy
Obrázek 25: Použití funkce Cut, Weld a červeně označené polygony byly odstraněny
Po vyříznutí otvoru pro kolo a odebrání polygonů byla tato část tvořena spíše lomenými čárami než plynulým obloukem, proto jsem ve vertikálním směru pro zjemnění přidal další polygony. Dále byly odebrány hrany, které nevhodně křížily lem kopírující kolo a naopak přidány hrany kolem směrového světla, aby zde bylo co nejméně trojúhelníků. Použitím funkce Cut jsem přidal další hranu přesně mezi světla, na spoileru a v zadní části blatníku. V zelené části na obrázku 26 došlo k zásadní změně struktury objektu, protože všechny hrany by se měly sbíhat k okraji blatníku. Body jsem opět co nejpřesněji posunul vzhledem k nákresům.
4
ANALÝZA MODELOVACÍCH TECHNIK
Obrázek 26: Přidání hran funkcemi Slice a Cut a změna struktury v zelené části
Obrázek 27: Chamfer (červená), Chamfer + Extrude (modrá)
39
4.5
Modelovací postupy
40
Po zachycení základního tvaru byly vytvořeny ostřejší lemy a přechody dílů karoserie. Na lemy byla použita funkce Chamfer v pod-objektu hrana, zřejmě jedna z nejvíce používaných funkcí při tvorbě detailů. Chamfer po vybrání hrany v ploše objektu vytvoří další hranu a mezi ně vloží polygony. Na zvýraznění přechodů dílů karoserie je po Chamfer aplikována ješte funkce Extrude, která vytáhne vzniklé polygony dovnitř karoserie. Podrobné použití je zachyceno na obrázcích 27-29. Na obrázku 27 jsou červenou čárou zvýrazněny všechny hrany na které byl aplikován Chamfer a modrá čára symbolizuje použití Chamfer a na vzniklé polygony potom Extrude. Co vytvoří Chamfer s vybranou hranou ukazuje obrázek 28. Zde je dobře patrné přesné zdvojení hrany v ploše a vložení polygonů. Modrá čára představuje hranu na kterou byla funkce použita a červeně jsou označeny vybrané nově vzniklé polygony.
Obrázek 28: Použití funkce Chamfer na hranu objektu
Obrázek 29: Objekt před a po aplikaci funkcí Chamfer a Extrude
Vliv funkce Extrude je nejlépe patrný před a po použití na celý už zaoblený objekt. Pro zaoblení byl použit modifikátor MeshSmooth, a poté byl objekt vyrenderován. V dalším kroku jsem se zaměřil na spoiler auta. Použitím funkce Chamfer jsem udělal ostřejší hranu v úrovni značky automobilu a body pod značkou jsem posunul směrem
4
ANALÝZA MODELOVACÍCH TECHNIK
41
k zadku auta. Tímto úkonem vznikla požadovaná „propadlina“. V pod-objektu hrana byly funkcí Cut vytvořeny nové polygony, které se potom vytáhly dovnitř automobilu. Opět zde bylo potřeba dodržovat mnohoúhelníky se třemi nebo čtyřmi hranami. To jsem docílil funkcí Weld, kterou jsem už v předešlých krocích použil. Na obrázku 30 je modrou čárou vyznačena hrana, na niž byla 2x aplikována funkce Chamfer, zelená čára symbolizuje nové hrany a červeně označené polygony byly extrudovány.
Obrázek 30: Chamfer (modrá), nové hrany (zelená), extrudované polygony (červená)
Obrázek 31: Aplikace funkce Chamfer na otvory karoserie
Naprosto identickým způsobem jsem vytvořil i otvor pro mřížku chladiče. Na hrany které vznikly po extrudování jsem použil Chamfer. Při použití funkce na okraji objektu, dojde po přidání dalších polygonů ke zkosení a tím pádem ostřejší hraně. Na obrázku 31 jsou otvory před a po aplikaci funkce Chamfer. Objekt už je téměř hotový, ještě jsem vytvořil podběh extrudováním hrany kolem kola a přidal dvě hrany na spodní stranu spoileru. Vzniklé hrany posunul o kousek dozadu a tím vytvořil zakulacení. Hotový vyhlazený objekt po aktivaci symetrie je vyrenderován na obrázku 32.
4.5
Modelovací postupy
42
Na obrázku 33 je objektu přiřazena textura, scéna je nasvícena a byly vytvořeny detaily pro realističtější vzhled, které však nejsou předmětem analýzy.
Obrázek 32: Vyrenderovaný objekt bez světel a textur
Obrázek 33: Vyrenderovaný objekt po přiřazení textur a nasvícení scény
4
ANALÝZA MODELOVACÍCH TECHNIK
4.5.2
43
Modelování pomocí plane
V tomto postupu používám objekt, který se nazývá plane. Plane je speciální plochý polygon a při jeho tvorbě jsem stanovil počet segmentů z kolika bude složen stejně jako například u kvádru. Před jeho editací jsem ho převedl na editable poly. Je to úplně opačný styl modelování, než který je vidět u BOXu. Nejde o to zachytit celý objekt, ale začíná se postupně s jednotlivými detaily, kterými se snažím co nejvíce kopírovat modelovaný objekt. Pomocí vytahování hran jsou přidávány další segmenty respektive v editable poly polygony. Užití modelování pomocí plane v praxi Stejně jak u BOX modelování jsem nejprve vytvořil čtyři plane objekty a na ně použil texturu automobilu. V bočním pohledu jsem dále vytvořil objekt plane s jedním segmentem jak na výšku tak šířku a umístil na lem kola, protože od něj začínám tvořit celý objekt. Odkud začne uživatel objekt tvořit je čistě subjektivní záležitost. Před tím než byl objekt zarovnán v horním pohledu k lemu kola, jsem ho převedl na editable poly. Poté, co byl objekt správně umístěn ve všech osách, aplikoval jsem modifikátor Symmetry, který zajistí zrcadelní modelu.
Obrázek 34: Objekt plane převedený na Editable poly a zarovnaný k lemu nad kolem
V dalších krocích budu postupně vytvářet nové polygony a snažit se co nejvěrohodněji kopírovat nákresy. Nový polygon jsem vytvořil označením hrany jejímž směrem se má nový polygon vytvořit, zmáčknutím klávesy shi a posunutím. Jeho koncovou hranu je obvykle potřeba ještě posunout nebo natočit v určitém směru. Zachycení tvorby části lemu je na obrázku 35. Nově vzniklé polygony respektive body, hrany a polygony je vhodné hned přesně posunovat ve všech pohledech, aby věrně kopírovaly karoserii auta. Tímto způsobem jsem tedy nejdříve vytvořil celý lem a zarovnal s nákresy i v pohledu shora. V dalších krocích jsem si všímal významných částí, a podle toho vytahoval další polygony. Další kroky jsou patrné na obrázku 36. Zelená kolečka označují aplikaci funkce Cut - vzniklé dva trojúhelníky.
4.5
Modelovací postupy
44
Obrázek 35: Tvorba části lemu pomocí vytahování polygonů
Obrázek 36: Šipky ukazují směr vytahovaných hran
Začal jsem tvořit od okraje blatníku a pokračoval stále ke středu auta. Vzal jsem celou horní hranu a tu opět zkopíroval pomocí tažení a klávesy shi a v pod-objektu bod zarovnal jednotlivé body v pohledu zepředu a shora. Pracuji se stejným počtem segmentů, které jsou definovány už lemem kola, pokud budou potřeba další detaily je možné je přidat nástroji Slice, Cut nebo Chamfer, ale ty budu aplikovat až po zachycení základního tvaru. Na obrázku 37 je hrana, kterou jsem vytáhl v pohledu z boku a v pohledu shora. Zepředu jsou červeně označeny nově vzniklé polygony a zeleně hrana na které byly upraveny konstrukční vrcholy dle nákresů. Stejným způsobem jsem vytáhl a upravil nově vzniklé hrany. V tento moment ještě zbývaly dva kroky k zachycení přibližného tvaru. Oba dva kroky zachycuje obrázek 38, v kterém jsou označeny nově vzniklé polygony a jejich zarovnání v jednotlivých pohledech. Po přibližném zachycení výchozího tvaru jsem přidal několik dalších hran funkcemi Slice a Cut v úrovni pod-objektu hrana pro plynulejší zaoblení karoserie. Na obrázku 39 jsou označeny nově vzniklé hrany. Body, které tvoří hrany, byly posunuty, aby co nejvěrněji
4
ANALÝZA MODELOVACÍCH TECHNIK
45
Obrázek 37: Hrana určená k vytažení a nově vzniklé polygony s editovanou hranou
Obrázek 38: Vytažení a úprava nově vzniklých polygonů
kopírovaly nákresy. Zelená čára vyznačuje hrany, na které byla aplikována funkce Chamfer, aby došlo k zostření přechodů v těchto místech karoserie. Na pravé straně obrázku je vidět vliv těchto kroků na vyrenderovaním objektu. Od této fáze se postup už moc neliší od postupu, který analyzuje BOX modelování. Vytvořil jsem otvory mezi přední kapotou, světlem a blatníkem. Stejně jako v předchozím postupu nejprve aplikuji funkci Chamfer a na vzniklé polygony Extrude dovnitř objektu. Naprosto stejným postupem jako u BOX modelování jsem udělal otvory ve spoileru, pro mřížku chladiče a některé další detaily. Ještě před tvorbou otvorů jsem posunul spodek spoileru dovnitř auta. Významné úkony jsou na obrázku 40. Kapota automobilu vytvořená pomocí objektu plane s doplněnými detaily je na obrázku 41.
4.5
Modelovací postupy
Obrázek 39: Funkce Slice (červená), Cut (modrá) a Chamfer (zelená)
Obrázek 40: Funkce Extrude (zelená čára a červené polygony), Chamfer (modrá)
Obrázek 41: Vyrenderovaný objekt vytvořený pomocí objektu plane
46
4
ANALÝZA MODELOVACÍCH TECHNIK
4.5.3
47
Spline modelování
Modelování pomocí křivek lze v širším slova smyslu přirovnat k NURBS modelování ve Rhinu. Na začátku se snažím zachytit detaily objektu pomocí spline křivek. Nemusel jsem ani používat přímo spline křivky, ale jenom lomené čáry, protože pro konečné vyhlazení aplikuji na celý objekt modifikátor MeshSmooth. Pro vystižení základního tvaru je dobré zachytit jenom významné zlomy a přechody v objektu, protože další detaily se přidají až po převodu na editable poly. Výchozí síť lomených čar by měla být tvořena pouze čtyřúhelníky nebo trojúhelníky. Před použitím modifikátoru Surface se musí všechny křivky, které se vzájemně kříží, protnout v jednom bodě, jinak v okolí bodu nebude vytvořen polygon. Užití Spline modelování v praxi Opět jsem umístil do prostoru nákresy, aby výsledný tvar automobilu byl co nejpřesnější. V záložce tvarů jsem vybral křivku a před její tvorbou definoval, že se všemi editačními body bude zacházeno jako s ostrými rohy. Stejně tak jako u modelování pomocí plane objektu jsem začal od lemu kola. Při tvorbě křivky je dobré přemýšlet, kudy přibližně půjdou čáry, které tyto křivky budou křížit a zde vytvořit záchytné body. Na obrázku 42 jsou dvě lomené čáry, které kopírují obrázek z pravého a horního pohledu. Modré šipky představují přibližně čáry, kde bude docházet ke křížení.
Obrázek 42: Lomené čáry definující lem kola (červená)
Dalším krokem jsem zachytil opět viditelné přechody pomocí lomených čar. Nejprve je co nejpřesněji obkreslil v pohledu z boku, potom upravil v pohledu shora nebo zepředu pomocí konstrukčních bodů. Body tvořící křivku lze samozřejmě přidávat nebo ubírat. Na obrázku 43 jsou červeně zvýrazněny nově vytvořené křivky zarovnané dle bočního a horního nákresu. Zelené čáry značí křivky vytvořené v předchozím kroku. Už v této fázi došlo k tomu, že některé křivky se protínají nebo navazují. V takovém případě v průniku obou křivek musí ležet body, na každé křivce jeden, a ty se musí přesně krýt. Příklad zachycuje obrázek 44, v levé části je špatné křížení křivek, v pravé části správné. Vliv nepřesného křížení křivek je ukázán v pozdějším kroku, když se síť potáhne plochou.
4.5
Modelovací postupy
48
Obrázek 43: Nové lomené čáry (červená), z předchozího kroku (zelená)
Obrázek 44: Špatná a správná návaznost křížících se křivek
Obrázek 45: Nové lomené čáry (červená, modrá a zelená) a místa křížení (červené kroužky)
4
ANALÝZA MODELOVACÍCH TECHNIK
49
Nyní jsou vytvořeny stejným způsobem postupně všechny zbývající křivky, jejich doporučený počet a pořadí je vidět na obrázku 45. Červená křivka byla vytvořena jako první, protože jinak by zde vznikl příliš ostrý přechod. Dále přišly na řadu všechny lomené čáry, které leží v opačném směru než doposud tvořené křivky označené modrou barvou. Zelená křivka byla vytvořená jako poslední kvůli rozdělení velkých polygonů. V pravé části jsou červeně zakroužkovány pouze některá křížení křivek, kde by mělo platit to, co vidíme v pravé části obrázku 44. Vytvoření celé této struktury zabere více času kvůli už zmíněnému přesnému křížení. Dalším krokem bude spojení všech samostatných křivek do komplexní sítě a aplikování modifikátoru Surface. Spojení jsem provedl vybráním jedné křivky, přepnutím do pod-objektu bod dané křivky a použitím funkce Attach mult., která vytvořila celistvou síť. Spojenou síť jsem potáhl plochou, přesněji jednotlivými polygony použitím modifikátoru Surface. V levé části obrázku 46 je špatně vytvořena síť mnohoúhelníků vzniklá důsledkem nepřesného napojení křivek v určitých místech, které vidíme na obrázku 44.
Obrázek 46: Aplikace modifikátoru Surface na správně a špatně definovanou síť
Obrázek 47: Přidání hran funkcí Cut (modrá) a Chamfer (červená)
4.5
Modelovací postupy
50
Správně vytvořenou síť jsem převedl na editable poly a použil modifikátor Symmetry, abych mohl editovat pouze jednu stranu. Před tím, než jsem vytvořil otvory ve spoileru, návaznost karoserie a ostřejší zlomy, bylo přidáno několik hran funkcemi Cut a Slice. Přidání hran a základní tvar objektu je na obrázku 47. Další kroky byly už popsány v předešlých postupech, proto se jim nebudu podrobně věnovat. Na obrázku 48 je konečná vizualizace objektu vytvořená pomocí spline křivek.
Obrázek 48: Vyrenderovaný objekt vytvořený pomocí objektu plane
4.5.4
Modelování pomocí NURBS křivek
Pro zachycení tvaru objektu používám NURBS křivky a jimi potom proložím plochu. Při tvorbě křivek má tento postup hodně společného se spline modelováním, když se snažím zachytit tvary objektu. Na rozdíl od polygonálního modelování není objekt tvořen jednotnou polygonální sítí, ale skládá se z několika ploch. Pro co nejpřesnější vystižení plochy je dobré dodržovat přesnou návaznost křivek, kterou docílím pomocí uchopovacího režimu. Na rozdíl od polygonálního modelování je možnost zachytit výsledný objekt naprosto přesně, protože NURBS křivky matematicky popisují celý objekt. Výsledná vizualizace se obvykle neprovádí přímo ve Rhinu, protože to je primárně určeno pro modelování, ale objekt převeden na polygony a exportován například do 3D studia Max. Při konverzi na polygony je dobré najít vhodný kompromis, protože v Maxu může být objekt složen s příliš mnoha polygonů a už jen manipulace je vzhledem k nárokům na výpočetní výkon obtížná nebo naopak je polygonů málo a vzniknou nechtěné artefakty.
4
ANALÝZA MODELOVACÍCH TECHNIK
51
Užití NURBS křivek v praxi Stejně tak jako v 3D studiu jsem do prostředí umístil nákresy automobilu. V Rhinu není potřeba umísťovat nákresy na objekty, ale obrázky lze umístit do pozadí společně s konstrukční mřížkou. Obrázky by měly být ořezány tak, aby co nejvěrněji kopírovaly nákres auta a do prostoru jsem je umístil od počátku souřadného systému, aby na sebe ve všech pohledech navazovaly. Správné umístění blueprintů je na obrázku 49.
Obrázek 49: Umístěné nákresy auta do pozadí Rhina 3D
Začal jsem tvořit pouze pravou polovinu auta, kterou jsem potom zrcadlil, a až poté dodělal některé detaily, které nešly vtvořit pouze na jedné polovině. Při tvorbě křivek jsem se snažil, aby byly generovány z co nejméně konstrukčních bodů, protože jinak při proložení plochou vzniká hustá spletitá síť. Pokud nebylo možné vytvořit jednoduché křivky, na výslednou plochu jsem v některých případech aplikoval funkci Rekonstruovat. Začal jsem od vrchní části kapoty, protože ta je tvořena největší nepřerušovanou spojitou plochou. V bočním pohledu jsem nakreslil křivku, která začíná u předního skla a končí na konci kapoty. Křivka je tvořena pouze třemi body a potom jsem z ní vytvořil plochu pomocí funkce Vytažení až k výraznému zlomu na přední kapotě. Po vytažení byl použit modifikátor Rekonstruovat, který přidal více konstrukčních bodů, a všechny křivky v ploše převedl na stupeň tři kvůli pružnější editaci plochy v jejich okrajích. V levé části obrázku 50 je plocha (kapota) před a po rekonstrukci, v pravé části už i věrně zachycuje nákresy automobilu. Červená šipka ukazuje směr vytažení původní křivky. V dalším kroku jsem vytvořil přední nárazník, pro jehož konstrukci jsem nakreslil čtyři křivky a mezi nimi proložil plochu funkcí Tažení po dvou trasách. Dvě křivky složily jako trasy a další dvě definovaly tvar koncového zakřivení. V levé části obrázku 51 jsou červeně označeny křivky, které byly nově vytvořeny a modrá čára představuje křivku, která
4.5
Modelovací postupy
52
vznikla duplikováním hrany z vrchní kapoty automobilu kvůli co nejpřesnější návaznosti. Duplikovanou křivku jsem spojil se zbytkem vrchní hrany, aby tvořila jednotnou trasu pro budoucí plochu. V pravé části je už nově vytvořena celá plocha, kde červené čáry představují trasy a zelené řezy, které sloužili k funkci Tažení po dvou trasách.
Obrázek 50: Plocha zachycující kapotu automobilu
Obrázek 51: Plocha (kapota) vytvořená funkcí Tažení po dvou trasách
Dále jsem pokračoval níže v přední části a vytvořil spoiler. Pro jeho vytvoření jsem aplikoval funkci Tažení po jedné trase, která už sama napovídá, že pro vytvoření plochy stačí jedna trasa. Trasu jsem stejně jako v předchozím postupu, duplikoval z hrany už existujícího předního nárazníku, aby došlo k co nejpřesnějšímu navázání ploch. K trase byla připojena krátká křivka, protože spoiler přechází do boční části automobilu. Řez jsem vytvořil taky pouze jeden, protože spoiler má po celé jeho délce stejná tvar Nyní jsem vytvořil plochy směřující k zádi automobilu. Pro jejich vygenerování byla použita funkce Tažení po dvou trasách, a to hned dvakrát. V levé části obrázku 53 jsou modře označeny křivky, které vznikly duplikováním hran už existujících ploch, a červeně označeny nově vytvořené křivky. V pravé části červené křivky definují trasy objektu, v tomto případě mají plochy jednu trasu identickou a zelené křivky hraniční řezy.. Do boční části jsem vyřízl otvor, abych později mohl vytvořit lem kola. Nejprve jsem nakreslil křivku v bočním pohledu, která přesně kopíruje tvar z boku, potom ji promítl na plochu, v mém případě hnědou, šedou a růžovou a oddělil vnitřní část oblouku. Oddělenou
4
ANALÝZA MODELOVACÍCH TECHNIK
53
část jsem potom vymazal. U některých ploch se my stalo, že už vytvořená plocha byl tvořena více plochami, proto před použitím oddělení jsem musel tuto plochy rozpojit na dílčí části. Postup zachycuje obrázek 54, kde modrá křivka představuje promítnutou křivku už na karoserii automobilu.
Obrázek 52: Plocha (spoiler) vytvořená funkcí Tažení po jedné trase
Obrázek 53: 2x použitá funkce Tažení po dvou trasách (hnědá a šedá plocha)
Obrázek 54: Promítaná křivka (modrá), promítnutá křivka na ploše (červená)
4.5
Modelovací postupy
54
V dalším kroku jsem vytvořil celý lem, který směřuje k otvoru pro kolo. K tomuto úkonu se jednoznačně nabízí použití funkce Tažení po dvou trasách. Jedna trasa je definována už vytvořeným otvorem, druhou jsem nakreslil v bočním pohledu a její tvar upravil i z pohledu zepředu. Na obrázku 55 červené čáry představují trasy plochy a modré okrajové řezy, v pravé části obrázku je už vytvořený lem kola.
Obrázek 55: Lem kola vytvořený podle tras (červená) a řezů (modrá)
Dále jsem promítl na přední část automobilu všechny křivky, které představovaly nějaké otvory. Křivky jsem nakreslil z pohledu zepředu a ze stejného pohledu musely být i promítány, aby jejich umístění bylo přesné. Celkem jsem promítal čtyři křivky, dvě do spoileru pro sání vzduchu a dvě do přední části, pro chladič a značku. V levá části obrázku 56 jsou křivky určeny pro promítání a v pravé části už po promítnutí, rozdělení a skrytí. V tomto případě jsem objekty nemazal jako při tvorbě otvoru pro kolo, protože se mě hodily pro další práci.
Obrázek 56: Křivky promítané na přední část automobilu
Okrajové hrany vzniklých otvorů jsem vytáhl směrem k vnitřní části auta a na jejich konce umístil skryté oddělené plochy z předchozího kroku. Na přechod z přední části do vytažení byla aplikována funkce Zaoblení. Identicky jsem vytvořil i podběh předního kola.
4
ANALÝZA MODELOVACÍCH TECHNIK
55
Nakonec jsem udělal mezery mezi díly karoserie. Funkcí Potrubí jsem po trase táhl kružnici a vzniklým tělesem jsem potom oddělil okraje ploch, kde nedochází k úplnému navázání. Trasu potrubí tvořili křivky, z kterých byly v předešlých krocích vytvořeny plochy nebo jsem některé hrany ploch duplikoval na křivky. V levé části obrázku 58 jsou červeně označeny křivky které tvořily trasu potrubí. Potrubím jsem zkoušel oddělit všechny hraniční části ploch naráz, ale tato cesta nevedla k cíli. Krajní části musí být odděleny jednotlivě, a to ve většině případů potrubím, které přesahuje danou plochu. Detail je zachycen v pravé části obrázku 58.
Obrázek 57: Vytažení a zaoblení předních otvorů automobilu
Obrázek 58: Trasa potrubí (červená), plocha potrubí přesahující krajní části (fialová)
Úplně posledním krokem před převedením objektu do 3D studia MAX pro konečnou vizualizaci, bylo zrcadlení poloviny auta a spojení jednotlivých částí. V průběhu práce na spoustě obrázků lze vidět nepřesné navázání, to je způsobeno tím, že jednotlivé části nebyly doposud spojené. Pokud by i přesto mezi některými částmi zůstávaly mezery, před použitím Spojení je nutné použít ještě funkci Navázání ploch. Na obrázku 59 je kompletně spojený objekt v trojrozměrném pohledu programu a po vizualizaci v Rhinu bez světel a textur.
4.5
Modelovací postupy
56
Obrázek 59: Spojené plochy automobilu, vizualizace v Rhinu
Obrázek 60: Vyrenderovaný objekt vytvořený pomocí NURBS křivek v Rhinu 3D
4.5.5
Shrnutí a doporučení
V závěrečném zhodnocení jsem se nejprve zaměřil na polygonální techniky použité v 3D studiu Max a potom jsem je srovnal s NURBS křivkami použitými v Rhinu 3D. V 3D studiu byl od začátku modelování jednoznačný záměr, vytvořit síť tvořenou čtvercovými nebo trojúhelníkovými polygony s co nejlépe editovatelnou strukturou pro pozdější úpravy nebo zachycení detailů. Jednoduše řečenou, šlo o to vytvořit co nejvíce identickou síť dle tří různých přístupů. Konečná síť polygonů byla nakonec ve všech třech postupech tvořena ve většině případů ze čtvercových polygonů, pouze kolem lemu kol bylo nutné použít trojúhelníkové polygony, které však po aplikaci modifikátoru vyhlazení netvořily žádné nechtěné artefakty.
4
ANALÝZA MODELOVACÍCH TECHNIK
57
Box modelování Tento způsob modelování se vyznačuje rychlostí pro definování základního tvaru, kde se umístil na prvním místě. Velice bych tento postup doporučil začátečníkům, kteří chtějí udělat nějaký složitější objekt, samozřejmě po zvládnutí ovládání programu a funkcí potřebným k jeho modelování. Při tvorbě výchozího tělesa (krychle, kužel, jehlan atd.) je vhodné zvolit spíše méně segmentů, protože při hustší struktuře už zachycení základního tvaru bylo složité. Další detaily a zlomy v objektu lze kdykoliv přidat v průběhu modelování a to je základní myšlenka tohoto způsobu. Začal jsem od jednoduchého jasně definovaného objektu a postupem přidával další detaily viditelné na nákresech. Topologicky jsem začal od významnějším zlomů a přechodů, které zabírají větší část objektu a pokračoval k méně významným. Plane modelování Modelování pomocí plochého polygonu plane se z hlediska časové náročnosti umístilo na druhé pozici. Vytahování jednotlivých hran a jejich úprava zabrala více času než řezaní objektu funkcemi Cut a Slice u BOX modelování. Už při tvorbě jednotlivých polygonů je dobré přemýšlet, kterým směrem zhruba půjdou konstrukční hrany objektu. Opět zde platilo podobné pravidlo jako u BOXu - postupně vytvářet méně polygonů, protože i zde lze v pozdější části postupu přidávat další hrany pomocí Cut a Slice. Osvědčilo se mi začít od komplikovanější části objektu, v mém případě lem kola automobilu. Kolem otvoru pro kolo jsem vytvářel polygony obvykle jeden po druhém. Postupně jak jsem se dostával ke středu auta, už bylo možné vytahovat celou řadu polygonů, protože zde není objekt tak složitý. Tento způsob modelování nedoporučuji použít pro úplnými začátečníky, protože odhad vytažených polygonů nemusí být vždy správný a zbytečně dochází k složitým úpravám tvaru objektu. Spline modelování U spline modelování je kladen důraz na přesnost, a z toho důvodu velmi vzrostla časová náročnost na vytvoření požadovaného objektu. Tento postup má hodně společného s NURBS modelováním v Rhinu. Pomocí lomených čar jsem definoval budoucí hrany objektu, tedy jeho výchozí strukturu. Čas nutný k definování základního tvaru vzrostl, protože v místě, kde se dvě čáry kříží, musí být na každé z čar bod, a ty potom zarovnány ve všech směrech. Nevyhnul jsem se tedy použití uchopovacího režimu bod, aby zarovnání bylo přesné. Nakreslení lomené čáry zabere nepoměrně méně času než definování nových bodů a jejich zarovnání. Při nepřesném zarovnání bodů dochází k chybné aplikaci modifikátoru Surface. Přidáváním dalších lomených čar už do poměrně husté sítě vznikají nové křížící body a v této chvíli se z tohoto postupu stává mravenčí práce. Tento postup není složitý, ale je určitě pracnější než předchozí dva. NURBS křivky Modelování prostřednictvím NURBS křivek je matematicky nepřesnější vyjádření modelovaného objektu. Kdyby blueprinty přesně definovaly rozměr a rádius křivek, objekt
4.5
Modelovací postupy
58
by byl proporcionálně naprosto identický s nákresy. Vzhledem k tomu, že výsledný objekt nejvěrohodněji kopíruje originál, byl také v průběhu kladen důraz na dodržování přesnosti při tvorbě modelu. Každé nepřesné navázání křivky je ve výsledném objektu hned patrné. Mezi různými plochami vznikají mezery a v mnoha případech nelze mezi křivkami ani proložit plochu. Použití uchopovacího režimu je v Rhinu tedy samozřejmostí a to nejenom uchopovacího režimu bod, ale také koncový bod, střed, průsečík apod. Velice doporučuji použití vrstev v Rhinu, protože v určité fázi procesu by byla tvorba objektu naprosto nepřehledná. Vzhledem ke všem těmto zmíněným skutečnostem je tvorba objektu časově jednoznačně nejnáročnější v porovnání s polygonálním modelováním v 3D studiu Max. Nejblíže k této metodě má zřejmě modelování pomocí spline křivek s tím rozdílem, že v Rhinu se definují křivky narozdíl od lomených čar v Maxu a obvykle jenom hraniční. U NURBS křivek je mnohem jednodušší vytvoření ostré hrany než u polygonální sítě, protože polygonální síť je složena z mnoha plošek a v místě ostré hrany jich musí být více, aby se snížil dopad vychlazovacího modifikátoru. Více polygonů ovšem stěžuje práci s objektem. Stejně tak jak je tento postup nejpracnější, je také nejobtížnější pro začátečníky, protože jde o méně intuitivní způsob tvorby předmětu než při polygonálním modelování. Srovnání vytvořených modelů Konečná vizualizace kapot dle rozdílných modelovacích technik vedla téměř k identickému cíli. Drobných rozdílů si lze všimnout na obrázcích 61 a 62 v přívodu vzduchu ve spoileru automobilu, a to především ve srovnání NURBS křivek s polygony. V Rhinu není problém vytvořit ostré, jasně definované hrany, což je v Maxu obtížnější a musí se přidávat další hrany nebo snížit zakulacení na nulu. Vypnutí zakulacení u problémových hran ovšem ovlivňuje i okolní hrany a v některých případech vznikají nechtěné přechody, proto je nutné, dle modelovaného objektu vybrat mezi přidáním hran a zakulacením. Všemi technikami lze dosáhnout shodného cíle, ale u každého s jinou pracností a časovou náročností. Hodnocení Při modelování jsem hodnotil časovou náročnost (čas potřebný k vytvoření základního tvaru modelu) a editaci (detaily a drobnější úpravy tvaru). Dle dosažených výsledků jsem udělil body stejně jako u hodnocení proramů od 1 do 5, kdy pět bodů znamená nejlepší výsledek. Hodnocení bylo prováděno subjektivně, proto je nelze brát jako dogma, ale spíše jako obecné doporučení. Každý uživatel by si sám měl vyzkoušet všechny postupy a je možné, že se jeho hodnocení a výběr bude lišit. Hodnocení může také ovlivnit výběr modelovaného objektu. Dle průměrných bodů mě nejlépe vychází BOX modelování, následované modelováním pomocí plane a na třetím místě se stejnými výslednými body umístilo spline modelování a modelování pomocí NURBS křivek. Výsledky je nutné brát jako obecné doporučení pro začátečníky v oblasti 3D modelování.
4
59
ANALÝZA MODELOVACÍCH TECHNIK
BOX modelování Spline modelování Modelování pomocí plane Modelování pomocí NURBS
časová náročnost 5 2 4 2
editace 5 3 4 3
průměrné body 5 2,5 4 2,5
Tabulka 4: Hodnocení modelovacích postupů
Obrázek 61: Objekt vymodelovaný pomocí BOX a plane
Obrázek 62: Objekt vymodelovaný pomocí Spline a NURBS
4.6 Vizualizace v 3D studiu Max
60
4.6 Vizualizace v 3D studiu Max Všechny konečné výstupy byly prováděny v programu 3D studio Max. Jak probíhá aranžování scény v tomto programu ukážu na modelu kapoty vymodelovaného dle jedné z analyzovaných technik. Postup bude identický jak v teoretické části s výjimkou toho, že přeskočím modelování, kterému se věnuji v jiné kapitole a začnu od hotového objektu v šedé barvě a standardními světly ve scéně. Před tím než jsem začal přiřazovat textury, umístil jsem pod model auta dostatečně velký objekt plane, který tvoří podlahu a zároveň i pozadí vyrenderovaného obrázku. Do scény jsem přidal kameru, kterou jsem nahradil pohled perspektiva, abych měl neměnný pohled pro konečnou vizualizaci. V levé části obrázku 63 je horní pohled programu s modelem a kamerou. Pohled z kamery je zachycen v pravé části obrázku.
Obrázek 63: Pohled 3D programu a vyrenderovaný objekt bez textur a světel
Kapota automobilu je tvořena jedním objektem, proto jsem přiřadil před začátkem texturování jednotlivým polygonům v editable poly identifikační čísla, dle kterých dojde k přiřazení textur. Model tvoří polygony se třemi identifikačními čísli: 1-červený lak auta, 2-světla a 3-podběhy, vnitřní část chladiče a přívodů vzduchu. V editoru materiálů jsem vybral mulit/sub-object materiál, abych mohl definovat počet dílčích materiálů a jejich čísla. Počet textur jsem nastavil na hodnotu tři a definoval materiály pro jednotlivá identifikační čísla. U kapoty byl zvolen raytrace materiál kvůli odleskům a u čísel 2 a 3 standardní materiál pouze s jinými barvami. Na plane objekt doporučuji umístit raytrace materiál s vypnutými odlesky, který tvoří efekt pozvolného přechodu do černé barvy k hornímu okraji obrázku (do dálky). Mřížce chladiče a značce auta jsem přiřadil také raytrace materiál pouze s upravenými hodnoty odlesků a jinými barvami. Editor materiálu s rozvinutým multi/sub-object materiálem je na obrázku 64 a vyrenderovaný potexturovaný model na obrázku 65. Po přiřazení textur jsem do scény vložil světla. Hlavní světlo je simulováno kuželovým světlem, umístěné ze směru kamery, aby byla dobře osvětlená část na kterou je nejlépe vidět. Intenzitu kuželového světla jsem snížil na 0,8, protože při plné intenzitě docházelo k přesvícení kapoty automobilu a vznikalo spoustu bílých míst. Kuželové světlo ovšem
4
ANALÝZA MODELOVACÍCH TECHNIK
61
nestačilo k nasvícení celého modelu, proto jsem přidal další dvě dodatečná bodová (všesměrová) světla. První na pravou stranu a druhé před přední část kapoty. U obou jsem snížil intenzitu na 0,3 kvůli stejnému důvodu jako u kuželového světla. Na obrázku 66 jsou pohledy 3D studia se všemi vloženými objekty ve scéně.
Obrázek 64: Editor materiálů 3D studia Max
Obrázek 65: Kapota po přiřazení textur - bez světel a se světly ve scéně
4.6 Vizualizace v 3D studiu Max
Obrázek 66: Pohledy 3D studia se všemi objekty ve scéně
62
5
5
ZÁVĚR
63
Závěr
Práce se zabývá 3D počítačovou grafikou, její tvorbou, 3D nástroji a především nejdůležitější částí vzniku - modelováním. Jejím cílem bylo sestavit souhrn informací pro začínající i pokročilé uživatele v oblasti 3D modelování, který vycházel z dostupných modelovacích programů a technik tvorby modelu prostřednictvím počítače. Proces tvorby trojrozměrného modelu prostřednictvím počítače byl vysvětlen ve všech třech jeho krocích. Aranžování scény se zabývá samostatná kapitola v teoretické a poté i v praktické části, aby laik získal přehled o průběhu tvorby celé 3D scény. Praktická část tvorby scény byla představena na objektu, který byl předmětem analýzy modelovacích technik. Jednou z významných částí je přehled a analýza 3D nástrojů. Širší výběr programů byl poté snížen pouze na dva, které nejvíce vyhovovaly použitým technikám při tvorbě modelů. Analýza vybraných 3D nástrojů ukázala důležitost přívětivého uživatelského prostředí, které se ovšem nemusí vztahovat k ostatním možnostem programu nebo použité modelovací technice. Hlavní naplní práce byla analýza modelovacích postupů, které se nejčastěji používají při tvorbě modelu. Detailně popsané techniky čtenáři objasní postup vzniku konstrukce objektu a zmíní doporučení a možné nástrahy. Každý uživatel by měl být schopný dle těchto postupů zvládnout modelování konkrétního objektu a sám si vyzkoušet, která technika mu vyhovuje nejvíce. Hodnocení modelovacích technik mezi jednotlivými čtenáři může být rozdílné a také nemusí korespondovat s hodnocením práce, protože modelování je velmi kreativní činnost. Z výsledků provedené analýzy ovšem jasně vyplývá, že tvorba modelu pomocí NURBS křivek ve vztahu k polygonálnímu modelování je podstatně náročnější způsob modelování kvůli omezenější kreativitě, která je dána jeho matematickou přesností.
6
6
LITERATURA
64
Literatura
[1] 3D COMPUTER GRAPHICS. Teorie 3D počítačové grafiky. Volně dostupná internetová encyklopedie Wikipedia. Dokument ve formátu HTML. Elektronická adresa http://en.wikipedia.org/wiki/3D_computer_graphics.
[2] 3D STUDIO MAX. Technická specifikace programu 3D studio Max. Dokument ve formátu PDF. Elektronická adresa http://images.autodesk.com/adsk/files/3dsMax8_techspec_rev.pdf.
[3] CINEMA 4D. Technická specifikace programu Cinema 4D. Dokument ve formátu PDF. Elektronická adresa ftp://ftp.maxon.net/pub/r95/r95brochure_e.pdf.
[4] CONSTRUCTIVE SOLID GEOMETRY. Modelovací technika. Volně dostupná internetová encyklopedie Wikipedia. Dokument ve formátu HTML. Elektronická adresa http://en.wikipedia.org/wiki/Constructive_solid_geometry.
[5] FREEFORM SURFACE MODELLING. Modelovací technika. Volně dostupná internetová encyklopedie Wikipedia. Dokument ve formátu HTML. Elektronická adresa http://en.wikipedia.org/wiki/Freeform_surface.
[6] LIGHTWAVE 3D. Stránky výrobce programu LightWave 3D. Dokument ve formátu HTML. Elektronická adresa http://www.newtek.com/lightwave/index.php.
[7] ONNOVANBRAAM. Osobní stránka Onno van Braama zabývající se polygonálním modelování v 3D studiu MAX. Dokument ve formátu HTML. Elektronická adresa http://www.onnovanbraam.com/.
[8] POLYGONAL MODELING. Modelovací technika. Volně dostupná internetová encyklopedie Wikipedia. Dokument ve formátu HTML. Elektronická adresa http://en.wikipedia.org/wiki/Polygon_modeling.
[9] RENDERING. Tvorba 2D obrazu z 3D modelu. Volně dostupná internetová encyklopedie Wikipedia. Dokument ve formátu HTML. Elektronická adresa http://en.wikipedia.org/wiki/Rendering_(computer_graphics).
[10] RHINO 3D. Stránky výrobce programu Rhino 3D. Dokument ve formátu HTML. Elektronická adresa http://rhino3d.com/. [11] SOCHOR, J., BENEŠ, B., ŽÁRA, J. Algoritmy počítačové grafiky. Praha: ČVUT, 1996, 184 s. ISBN 80-01-01406-1. [12] VÝUKA POČÍTAČOVÉ GRAFIKY. On-line diplomová práce zabývající se teorií křivek. Dokument ve formátu HTML. Elektronická adresa http://lubovo.misto.cz/_MAIL_/curves/.
[13] ŽÁRA, J., FELKEL, P., BENEŠ, B., SOCHOR, J. Moderní počítačová grafika. Praha: Computer Press, 2005, 628 s. ISBN 80-251-0454-0.