3D modelování
Rhinoceros je program pro 3D modelování, který dokáže pracovat s jakýmkoliv typem geometrie - NURBS plochami, SubD plochami i s polygonovými sítěmi.
![3D modelování](/images/field/1/cover_1920.jpg)
3D modelování je proces vytváření digitálních trojrozměrných objektů pomocí specializovaného software. Designéři, architekti, konstruktéři, umělci a další profesionálové využívají 3D modelování k tvorbě virtuálních 3D modelů a jejich vizualizaci, analýze, simulaci a výrobě.
Pro vytvoření 3D modelu potřebujete specializovaný program - 3D modelář. Mezi nejvýkonnější a nejuniverzálnější modeláře na světě patří Rhinoceros (většinou nazývaný zkráceně Rhino), vyvinutý americkou firmou McNeel & Associates ze Seattlu. Tento software je oblíbený mezi profesionály z různých oborů, včetně průmyslového designu, architektury a šperkařství a mnoha dalších. Rhinoceros poskytuje uživatelům nástroje pro tvorbu složitých technických i organických 3D modelů a umožňuje jejich vizualizaci, analýzu a export do dalších formátů a programů.
3D modelování podle modelovacích postupů
Podle typických pracovních postupů můžeme 3D modelování rozdělit zhruba do následujících kategorií (v reálných situacích se ovšem často navzájem prolínají):
Plošné modelování
Plochy jsou denním chlebem klasického 3D modeláře, zejména v oblasti designu, automobilového průmyslu nebo třeba šperků a obuvi. Modely jsou konstruovány nejčastěji na základě křivek pomocí funkcí pro tvorbu ploch, jako je tažení po jedné nebo dvou trasách, potažení křivek (například žeber křídla nebo trupu letadla) či rotace profilu kolem osy (vázičky, skleničky) a mnoha dalších. Základem dobrého modelu jsou kvalitní křivky, proto je nezbytné už od začátku dbát na jejich hladkost a jejich vzájemnou návaznost.
Deformační modelování
Deformační modelování je velmi zajímavou podmnožinou plošného modelování. U samostatných NURBS ploch i u jakýchkoliv SubD ploch můžete zobrazit jejich řídicí body a jejich transformací (přesun, otáčení, zvětšování, kroucení, ohyb...) můžete vytvářet unikátní organické tvary. U SubD ploch můžete hladce manipulovat také s jednotlivými ploškami nebo hranami bez ztráty plynulé návaznosti na zbytek modelu.
Objemové modelování
Tento typ modelování znají zejména strojaři a má svůj původ v objemových modelářích, jako je Solidworks, NX nebo Creo - na rozdíl od nich Rhino není parametrický modelář a nedisponuje stromem operací. Rhino je obecný plošný modelář, umožňuje přitom využívat funkce objemového modelování, jako jsou například booleovské operace. V objemovém modelování vytváříte objekty jako plné objemy a výsledný model vzniká jejich postupnou kombinací - vytváříte základní tělesa (primitivy), vytahujete profily, některé objekty přičtete, jiné odečtete, zaoblujete hrany... narozdíl od objemových modelářů Rhino nevyžaduje, aby byl model v každém kroku uzavřeným tělesem a například booleovské operace můžete provádět i mezi otevřenými plochami.
Push/pull modelování
Tento způsob modelování je natolik rychlý a svébytný, že mu věnujeme speciální pozornost. A navíc je to jedna z velkých novinek Rhina 8. Jedná se o postup rychlé tvorby hrubých objemů, který znáte například z programu SketchUp. V českém Rhinu překládáme push/pull jako tlačit/táhnout a přesně to děláte s jednotlivými plochami (stěnami) těles. Tažením určité stěny nebo její části směrem ven přidáváte objem, zatlačením dovnitř objem odebíráte. Push/pull modelování se používá zejména v architektuře, ve které je díky převážně prizmatickým tvarům tento typ modelování zvlášť výhodný. Při push/pull modelování se pracuje nejčastěji s uzavřenými tělesy (v architektuře to v případě zdí celkem dává smysl :) ale není to podmínka, můžete pracovat i s otevřenými plochami. Tlačit/táhnout můžete celé stěny, ale také jejich části, vymezené křivkami které na stěně leží - typicky to jsou dveře, okna, stavební otvory a jiné tvary.
Generativní modelování
V posledních letech se stále častěji setkáváme s tím, že 3D model nebyl vytvořen ručně, ale byl vygenerován automaticky na základě určité existující geometrie nebo pouhé sady parametrů a pravidel. Nejen že byl vygenerovaný, ale často můžete jednoduše a v reálném čase měnit jeho parametry. A nás může jenom těšit, že zásadní podíl na této revoluci má Rhino se svým bezplatným modulem Grasshopper.
Hybridní modelování
Jak už jsme uvedli na začátku, v reálné práci se různé způsoby modelování často prolínají, kombinují a doplňují. Podívejme se na tento jednoduchý příklad:
![Kvalitní (vlevo - jednoduché) a nekvalitní (vpravo - příliš složité) vstupní křivky.](https://dimensio.cz/files/Ukazka%20hybridniho%20modelovani%2001.jpg)
Křivky jsou základ plošného modelu
Kvalitní plošný model vždy vychází z kvalitních křivek. Vytváření základních křivek věnujte mimořádnou pozornost. Křivky by měly být co nejjednodušší, nejhladší a samozřejmě také co nejplynuleji napojené.
Na obrázku jsou dvě skupiny křivek - vlevo jsou poměrně jednoduché křivky, které jsou pro naše účely dostačující. Pokud byste ale například modelovali automobily (zde hovoříme o takzvaném Class A modelování), museli byste je ještě více zjednodušit, případně napojit z více tzv. single-span, tedy jednosegmentových Bézierových křivek. Ale na to my tady teď nehrajeme :-)
Křivky vpravo jsou zbytečně složité, už vnější křivka sklenice má nadbytečný počet řídicích bodů a vnitřní křivka navíc vznikla jako odsazení s přísným nastavením tolerance, čímž se její složitost ještě znásobila. Vnitřní křivka sklenice u levé skupiny křivek byla sice také odsazena, ale s volbou Volně=Ano, proto si zachovala stejnou strukturu bodů jako originál.
Díky tomu, že obě křivky vlevo mají jednoduchou strukturu, jsou i méně náchylné ke vzniku hrbolů a nepravidelností a také půjdou snáze editovat pomocí řídicích bodů - lehce například upravíme vnitřní křivku sklenice v oblasti jejího dna.
Z křivek uděláme plochy
Křivky jsme vymazlili, tak vzhůru do tvorby ploch - použijeme příkaz Rotovat pro vytvoření rotačních ploch. Vnější plochu sklenice budeme chtít deformovat pomocí řídicích bodů (deformační modelování viz výše, vzpomínáte?), proto zvolíme odpovídající počet vertikálních sloupců řídicích bodů - konkrétně volbu PočetBodů nastavíme třeba na 48.
Zobrazíme řídicí body vnější plochy a v pohledu Shora vybereme každý druhý sloupec bodů. Z výběru odebereme horní a dolní řady bodů, abychom měly vybrané body pouze ve spodní části sklenice, kde chceme mít vroubky.
Pro tip: výběr bodů je trochu otravná a zdlouhavá záležitost. Abyste to nemuseli dělat pokaždé, když se rozhodnete tvar vroubků pozměnit, můžete využít uložení výběru do pojmenovaných výběrů. Pak kdykoliv výběr bodů vyvoláte znovu dvojklikem na uložený výběr Vroubky.
Pamatujte ale na to, že pojmenovaný výběr funguje pouze do té doby, než plochu spojíte s jinými plochami, ponecháme si ji proto zatím jako samostatnou, abychom v následujícím kroku mohli ladit tvar vroubků na základě snadného výběru a následné deformace těchto řídicích bodů.
Můžeme jít deformovat!
![Rotace profilu kolem osy a zobrazení řídicích bodů.](https://dimensio.cz/files/Ukazka%20hybridniho%20modelovani%2002.jpg)
![Deformace pomocí řídicích bodů](https://dimensio.cz/files/Ukazka%20hybridniho%20modelovani%2003.jpg)
Deformujeme. A pak ještě... několikrát
Teď nastává ta pravá kreativní zábava - jdeme deformovat. Řídicí body, které chceme deformovat, máme uložené v pojmenovaném výběru, proto můžeme provést deformace, vypnout řídicí body, abychom pěkně viděli tvar sklenice, posoudit její vzhled a opět je dvojklikem znovu vybrat a pokračovat v deformaci.
V první řadě si prozradíme důležité tajemství - s řídicími body můžete manipulovat jako s jakýmikoliv jinými objekty a to se týká i transformací. Můžete je nejen přesunovat, ale také otáčet nebo dokonce zvětšovat a zmenšovat. A přesně to provedeme s vybranými body - každý druhý sloupec vybraných bodů zvětšíme směrem ven a tím vzniknou na skleničce základní vroubky (levá sklenička).
Tvarové hrátky můžeme ještě trochu vylepšit, třeba tím, že z výběru odebereme horní a dolní řadu bodů a zbývající prostřední řadu trochu pootočíme - viz pravá sklenička.
Kreativitě se meze nekladou, ale nebojte, on vám ty meze nastaví ten pán, který na vás pořád křičí, protože ty vaše modely pak bude muset zaformovat... nenechávejte se proto při deformacích příliš unést, pokud modelujete pro výrobu, tak vždy myslete na následné technologické postupy a požadavky, které musí model splňovat.
Plynule přejdeme k plynulému přechodu
Plynulý přechod mezi plochami je velice efektní funkcí plošného modelování. Jejím cílem je vytvoření nové plochy, která hladce navazuje na své dva sousedy.
V naší ukázce využijeme plynulý přechod pro vytvoření hladkého okraje v horní části skleničky. Plochy vnitřku a vnějšku skleničky jsme si vytvořili samostatně, protože jsme každou z nich rotovali s jiným počtem vertikálních sloupců řídicích bodů. Zatímco vnější plochu jsme rotovali s 48 sloupci, aby obsahovala dostatek bodů na požadovanou deformaci, vnitřní plocha může být mnohem jednodušší, protože zde žádná deformace probíhat nebude.
Když jsme vyladili tvar vroubků v dolní části sklenice, můžeme vytvořit plynulý přechod okraje sklenice a všechny plochy spojit do uzavřeného tělesa. Spojitost jsme nastavili na Křivost (označuje se také G2 spojitost), to znamená, že plochy budou napojené zcela hladce - vlastně byste neměli vůbec poznat, kde končí jedna plocha a začíná druhá.
Pomocí posuvníků v dialogovém okně můžeme jemně vyladit strmost nebo pozvolnost (lze říci "vyboulení") přechodové plochy. Nakonec vše spojíme do jednoho tělesa. Těleso, objem... objemové modelování, vzpomínáte?
![Plynulý přechod v horní části skleničky.](https://dimensio.cz/files/Ukazka%20hybridniho%20modelovani%2004.jpg)
![](https://dimensio.cz/files/uploads/Ukazka%20hybridniho%20modelovani%2005.jpg)
A bude se odečítat... a zaoblovat.
Pomocí kruhového pole rozkopírujeme v objekty, které chceme odečíst - v našem případě kuličky. Sklenička je uzavřené těleso, pokud máme zobrazený panel Vlastnosti objektu a vybereme skleničku, vidíme to černé na šedém:
Pomocí funkce BoolRozdíl (tedy celým slovem booleovský rozdíl podle matematika George Boolea) odečteme rozkopírované kuličky od těla skleničky.
Při boolevoských opracích v Rhinu není nutné, aby objekty které do operace vstupují byly uzavřené. Je ale důležité, aby se nikde neprotínaly otevřenou hranou. Jejich průnik musí být vždy uzavřený, jinak Rhino nahlásí problém.
To ale není náš případ, tady jde všechno jako na drátkách. Kuličky se odečetly (klidně můžeme vybrat a odečíst všechny najednou), ale zůstaly po nich ostré hrany (viz horní obrázek). Příkazem ZaoblitHranu proto ještě všechny hrany zaoblíme, aby měly důlky po kuličkách měkčí vzhled.
A tohle je výsledek po několika minutách modelování. Všechny následující obrázky jsou screnshoty perspektivního pohledu Rhina v režimu renderovaného zobrazení a s různými materiály - se všemi přitom můžete normálně pracovat a modelovat - včetně krásného osvětlení zapadajícím Sluncem na posledním obrázku.
A takhle vypadá render modelu v základním Rhinu, pouze s jeho interním renderovacím modulem Cycles. Skleničky mají přiřazený PBR materiál skla a scéna je osvětlena HDR mapou z výchozí materiálové knihovny Rhina.
3D modelování podle typu geometrie
3D modelování můžeme kategorizovat také podle typu geometrie, se kterou budeme pracovat. V reálném světě se umělec musí rozhodnout, jestli bude modelovat sochu z hlíny, vyřezávat ji motorovou pilou z kmene stromu nebo ji tesat dlátem z pískovce. Každý materiál má své specifické vlastnosti a každý z nich budete opracovávat jinou sadou pracovních nástrojů.
Ve světě 3D modelování je to podobné, jenom malinko jednodušší. V zásadě se budeme bavit o třech typech geometrie - NURBS plochách (a spojených plochách, tělesech, křivkách... ale teď si to nebudeme komplikovat), polygonových sítích a SubD plochách. Jsou i jiné, relativně exotické typy geometrie (například voxely), my si teď ale vystačíme s těmi výše uvedenými. A tak, jak mohou být hybridní modelovací postupy, může být hybridní i váš 3D model z hlediska použité geometrie. Mohlo v něm být NURBS plochy, polygonové sítě i SubD plochy a vše se ukládá do stejného typu souboru Rhina - 3DM.
NURBS plochy
NURBS (NeUniformní Racionální Bazické Spliny) je matematiký popis hladkých křivek a ploch, který je jádrem skoro každého moderního CADu a 3D modeláře, ať už se jedná o plošný nebo objemový modelář. Výjimkou jsou programy typu SketchUp nebo různé stavební CADy, kde se s velkými tvarovými kreacemi příliš nepočítá.
Výhody NURBS geometrie:
- Flexibilita. NURBS geometrie dokáže vyjádřit téměř jakýkoliv myslitelný tvar (až na případy, kdy to smysl nedává, viz následující odstavec.)
- Přesnost. NURBS plochy jsou tím nejpřesnějším vyjádřením 3D tvarů, se kterým se v průmyslu můžete setkat. Všechny velké CADy s NURBS geometrií pracují.
- Datová nenáročnost. Pokud je NURBS model kvalitně vytvořený, stačí k popisu ploch většinou malý počet řídicích bodů.
- Kontrola nad tvarem. Tvar ploch lze přesně řídit vstupními křivkami, plochy lze navazovat s požadovanou hladkostí. Máte kontrolu nad spojitostí křivek i ploch.
- Univerzálnost. NURBS geometrie je průmyslový standard napříč odvětvími a díky této skutečnosti si můžete vyměňovat data i s takovými technickými 3D aplikacemi, jejichž název jste možná nikdy předtím neslyšeli.
Nevýhody NURBS geometrie:
- Hladkost NURBS ploch může být paradoxně také jejich nevýhoda, protože nemohou snadno vyjádřit hrbolaté a tvarově velmi nerovnoměrné povrchy, jako jsou třeba kamenné zídky nebo členitý 3D terén. Pro tyto účely se používají spíše polygonové sítě, viz níže.
- Náročnější deformace a animace objektu. Jakmile je model opatřen mnoha detaily, zaobleními a dalšími podrobnostmi, může se skládat z desítek jednotlivých ploch a je poměrně složité jeho tvar měnit. V Rhinu jsou sice k dispozici různé nástroje pro globální deformace (deformace podle křivky nebo plochy, deformační klece), pokud ale chcete mít možnost kdykoliv s modelem provést jakoukoliv lokální či globální tvarovou změnu, sáhněte raději po SubD geometrii.
- Vyšší nároky na uživatele. Pokud chcete brát modelování seriózně a jde vám o kvalitu výsledného modelu, měli byste znát alespoň základní matematické a geometrické pojmy jako je stupeň, křivost, spojitost a další.
Polygonové sítě
Historie používání polygonových sítí sahá do roku 1963, kdy Ivan Sutherland vyvinul polygonový modelovací program Sketchpad. Polygonové sítě jsou nejstarším typem geometrie a používají se zejména v herním průmyslu, 3D tisku a 3D skenování.
Výhody polygonových sítí:
- Jednoduchost. výpočty v modelovacích programech jsou rychlejší a jednodušší než v případě NURBS ploch
- Rychlost. Polygonové sítě se rychle zobrazují (proto také každý NURBS modelář musí v pozadí převést váš hladký model do polygonových sítí, aby je mohl poslat do grafické karty). Proto také herní enginy pracují s polygonovými sítěmi - moderní karty dokáží zobrazit desítky miliónů polygonů v reálném čase.
- Snadné vyjádření hrbolatosti a nerovností. Polygonové sítě snadno vyjádří komplikované tvary, jako jsou kameny, skály nebo stromy a rostliny. Výstupem 3D skenování jsou rovněž polygonové sítě.
Nevýhody polygonových sítí:
- Nejsou hladké a přesné. Povrch polygonových sítí není hladký, ale je tvořen rovinnými ploškami, nejčastěji trojúhelníky nebo čtyřúhelníky. Polygonové sítě proto nejsou vhodné například jako data pro průmyslovou výrobu, ale používají se například při simulacích metodou konečných prvků.
- Jsou datově náročné. Aby se tvar sítě co nejvíce přiblížil ideálnímu hladkému tvaru, musí být síť dostatečně hustá. Tím se výrazně zvyšují nároky na paměť i na velikost souboru v případě uložení dat.
- Obtížná editace. Polygonovou síť se statisíci a miliony polygonů je těžké je plasticky editovat. Můžete využít globální nástroje jako je deformace podle křivky/plochy nebo editace pomocí deformační klece, ale lokální plastická deformace je téměř nemožná. Existují sice specializované modelovací nástroje (například ZBrush), které se s tomto úlohou snadno poradí, to už jsme ale od Rhina hodně daleko.
SubD plochy
SubD plochy se mohou na první pohled vizuálně podobat NURBS plochám, ale zdání klame. SubD plochy nabízí mnohem větší možnosti volné deformace. Modelování se SubD plochami si můžete představit jako práci s plastelínou nebo modelářskou hlínou. Tato technologie je v současné době velice populární a najdeme ji nově také v mnoha velkých CADech. Její základy položili Catmull (spoluzakladatel Pixaru) a Clark již koncem 70. let minulého století. SubD plochy v sobě spojují to nejlepší z polygonového a NURBS světa a v Rhinu se aktuálně těší velké oblibě designérů, architektů, šperkarů a obecně umělecky zaměřených uživatelů.
Výhody SubD geometrie:
- Tvarovatelnost. SubD plochy se nejenom snadno tvarují, ale můžete k nim i přidávat další hmotnu pomocí vytažení existujících plošek a provádět mnohé další deformační operace - a SubD objekt přitom zůstává stále hladký.
- 100% kompatibilita s NURBS. SubD objekt lze převést na tvarově totožnou NURBS plochu (nebo spojenou plochu) a provádět další detailní modelování pomocí NURBS nástrojů (tím ale přijdete o možnost SubD editace).
Nevýhody SubD geometrie:
- Nepřesnost. SubD plochy jsou určeny spíše pro designérské plastické tvarování než pro strojírensky přesné tvary. Není problém uděla libovolně složité organické plochy, ale může být obtížné dosáhnout přesně ten tvar, který chcete.
- Absence přesných tvarů. SubD geometrie například nedokáže přesně vyjádřit kružnici nebo válce. To v některých oborech nemusí až tak vadit, ale třeba ve strojírenství potřebujete dokonalé návaznosti na kružnice, elipsy a další základní tvary.
A se kterými výše uvedenými typy geometrie dokáže Rhinoceros pracovat? Samozřejmě že se všemi!