Hlavní navigace

Modelujeme s krivkami v Blenderi

Miro Chodil

V dnešnej časti prejdeme na ďalšiu kapitolu, ktorú predstavujú krivky. Zatiaľ sa budeme zaoberať len všeobecnejším popisom, popíšeme si, čo je riadiaci polygón, predstavíme si riadiace body a našej pozornosti neuniknú ani panely Curve and Surface a Curve Tools, v ktorých môžete nájsť nástroje pre prácu s krivkami.

Krivky tvoria hojne využívanú oblasť nie len Blenderu, ale aj všeobecne 3d a 2d grafiky. Narozdiel od objektov typu Mesh sú všetky krivky definované matematickými funkciami, takže pomocou matematiky môžeme určiť ich presný tvar.

Táto ich vlastnosť prináša viacero výhod a nevýhod pri manipulácii s nimi. Ich asi najdôležitejšou výhodou je, že kvôli menšiemu počtu potrebných bodov na ich definíciu dochádza k úspore pamäti. Nevýhodu predstavuje vyššia náročnosť na čas renderovania, keďže sa musí brať ohľad na ich celý matematický popis, ktorý je narozdiel od Mesh objektov omnoho zložitejší. Krivky, tak isto ako aj objekty Mesh disponujú vlastnými nástrojmi a funkciami pre ich úpravu, takže si pri práci s nimi stretnete s úplne odlišným postupom ako pri Mesh objektoch.

V prípade, že máte nejakú krivku vytvorenú v inom programe, môžete ju do Blenderu jednoducho importovať, a to pomocou ponuky Import: paths (File > Import > Paths). Po dokončení všetkých úprav s tvarom sa krivky zvyknú konvertovať do štandardných Mesh objektov. Ponuku pre konverziu objektov môžete vyvolať klávesovou kombináciou Alt + C, no nezabudnite že po konverzii sa z daných kriviek stanú Mesh objekty ktoré sú inak definované, a teda vám už nebudú poskytnuté nástroje pre úpravu kriviek.

Blender 8

Ukážka vázy vytvorenej pomocou kriviek

Všetky krivky používané v Blenderi definuje ich riadiaci polygón, ktorý zhruba zodpovedá ich tvaru. Riadiaci polygón sa skladá z riadiacich alebo kontrolných bodov, ktoré do istej miery nahrádzajú vertexy z Mesh objektov. S každým typom krivky v Blenderi sa trochu menia vlastnosti riadiacich bodov, takže aktuálne sa ich presným opisom nebudem zaoberať. Dôležité však je, že s týmito bodmi môžeme manipulovať podobne ako s vertexami, a teda na ne môžeme aplikovať rôzne transformačné funkcie, pridávať a odoberať ich, extrudovať, teda takmer všetko, na čo ste zvyknutý pri práci s Mesh objektami. Tu je vhodné spomenúť, že krivky sú objekty situované v dvoch dimenziách, a teda ich narozdiel od plôch nemôžete posúvať po tretej osi (s výnimkou krivky typu Path). Všetky krivky môžete vyplniť faceami pomocou klávesy C.

Blender 8

Aktuálne môžeme v Blenderi pracovať s dvoma typmi kriviek, a to s Bézierovými a NURBS krivkami. Obidva typy kriviek môžete pridať pomocou ponuky Add > Curve (Krivka), pričom dohromady je nám poskytnutých päť možností:

Bezier Curve
Táto možnosť na scénu pridá novú Bézierovú krivku skladajúcu sa z dvoch riadiacich bodov. Tento typ kriviek sa často využíva na tvorbu objektov ako sú rôzne symboly alebo logá.
Bezier Circle
Bezier Circle je kombinácia štyroch riadiacich bodov usporiadaných tak, aby tvorili uzavretú kružnicu. Daná kružnica je automaticky vyplnená (po konverzii na Mesh je vyplnená faceami).
NURBS Curve
Tento príkaz pridá na scénu NURBS krivku. Zaujímavosťou pri NURBS krivkách je to, že narozdiel od Bézierových kriviek ani jeden z bodov riadiaceho polygónu nemusí ležať na výslednej krivke.
NURBS Circle
V poradí štvrtá možnosť – NURBS Circle pridá na scénu uzavretú kružnicu tvorenú NURBS krivkou.
Path
Krivka typu Path predstavuje trojdimenzionálnu NURBS krivku upravenú tak, aby sa dala použiť ako trajektória pohybu nejakého objektu, pri animácii.

V spojení s krivkami je často spomínaná a využívaná metoda ťahania profilu po krivke, ktorej som sa podrobnejšie venoval v treťom dieli tohoto seriálu. Na tomto mieste by vás mohla napadnúť otázka, na tvorbu akých objektov je vhodné túto metódu používať. Využijete ju teda hlavne pri tvorbe rôznych káblov, kľučiek (všimnite si kľučku na dome v predchádzajúcom dieli), niektorých listov, a objektoch podobného charakteru. Tiež je vhodné spomenúť techniku rotácie profilu krivky okolo osi, ktorou sme sa zaoberali v dieli Pokročilejšia práca s Mesh objektami v Blenderi 2.

Blender 8

Nurbs krivka (vľavo hore), Nurbs kružnica (vľavo dole), Bézier krivka (vpravo hore), Bézier kružnica (vpravo dole)

Panely Curve and Surface a Curve Tools

Panely Curve and Surface a Curve Tools môžete nájsť v sekcii Editing a slúžia na úpravu kriviek, prípadne plôch. Obidva panely sa samozrejme zobrazujú len v prípade, že vašu aktuálnu selekciu tvoria krivky, pričom panel Curve Tools sa na rozdiel od panelu Curve and Surface zobrazuje len v Edit móde. Na panely Curve and Surface môžeme nájsť viacero užitočných pomôcok s rôznou funkciou. Hneď hore sa nachádzajú editovatelné polia DefResolU a RenResolU, pričom obidve určujú rozlíšenie krivky s rozdielom toho, že RenResolU v prípade že nie je nulový určuje rozlíšenie krivky pri renderingu a DefResolU určuje rozlíšenie krivky všeobecne (v prípade že je RenResolU nulové, rozlíšenie pri renderingu určuje DefResolU).

Pod týmito panelmi sa nachádzajú tlačítka Back, Front, a 3D. Tlačítka Back a Front určujú či je krivka vyplnená plochou z vrchnej a spodnej strany. Tlačítko 3d určuje, či sa jedná o troj dimenzionálnu krivku. V prípade, že je toto tlačítko zapnuté, z krivky sa automaticky stáva krivka typu Path, ktorú sme si popisovali v predchádzajúcej časti tohoto dielu. V prípade, že ste pravidelným čitatelom tohoto seriálu, už určite spoznávate na ľavo situovanú trojicu vám už známych tlačidiel Center, Center New a Center Cursor, ktorým sme sa venovali v predchádzajúcom dieli tohoto seriálu. Pod tlačitkami Back, Front a 3D sa nachádza viacero editovateľných polí, ktoré majú využitie hlavne pri prevode krivky do troch dimenzií. Prvé je pole s názvom Width, pomocou ktoré môžete danej krivke jednoducho upraviť šírku a do istej miery aj výšku. Ďalším je Extrude, ktoré určuje výšku extrudovania profilu danej krivky do tretieho rozmeru.

V poradí tretím je pole Bevel Depth, pomocou ktorého môžeme určiť silu zaoblenia oboch strán krivky v treťom rozmere. Ďalším je pole BevResol, ktoré sa používa v spojení s Bevel Depth a určuje rozlíšenie zaoblenia vniknutého pri použití Bevel Depth. Posledné dve editovateľné polia predstavujú BevOb a TaperOb, ktoré sa využívajú pri metóde ťahaní profilu krivky na krivku. V textovom poli BevOb sa nachádza meno krivky, ktorej profil chcete potiahnuť po aktuálne zvolenej krivke. Pomocou nižšie nachádzajúceho sa textového pola TaperOb môžeme pomocou krivky určovať šírku potiahnutého profilu na rozdielnych miestach. Panel Curve Tools je vizuálne rozdelený na viacero sekcií. Každá z týchto sekcií je aplikovatelná len na určitý typ krivky, takže ich popisom sa budem zaoberať až pri popise konkrétneho typu krivky. Spoločná je však sekcia Convert (Konverzia), v ktorej sa nachádzajú tri tlačítka. Konkrétne sú to Poly, Bezier, a Nurb. Všetky tri tlačítka slúžia na konverziu medzi typmi kriviek. Prvé tlačítko Poly, skonvertuje riadiace body krivky do polygónov, druhé tlačítko Bezier skonvertuje krivku do Bézierovej krivky, a tretie tlačítko Nurb skonvertuje krivku do NURBS krivky.

Blender 8

Obsah ďalšej časti

V nasledujúcej časti sa začneme zaoberať konkrétnymi typmi kriviek používaných v Blenderi, konkrétne sa budeme venovať práci s Bézierovými a NURBS krivkami. Pri Bézierových krivkách sa budeme zaoberať hlavne jednotlivými typmi riadiacich a pomocných bodov. Pri NUBS krivkách ktoré sú opísané zložitejšie to budú hlavne ich parametre, ktoré predstavuje napríklad váha jednotlivých riadiacich bodov, hĺbka počítania krivky a pod.

Našli jste v článku chybu?

7. 8. 2009 11:41

Anino (neregistrovaný)

Ked som nieco male pisal o OpenGL, tak som tam popisoval aj import z .obj suboru, ktory zvlada aj blender. Je to celkom jednoduchy format (ma tam iba vertexy, steny a farby) a format sa od cias, ked som to pisal, tusim jeme zmenil, ale ak potrebujete, mozete to najst tu: http://www.smnd­.sk/anino/moje/O­penGL.pdf Je to 5. lekcia.

24. 7. 2009 16:01

frca (neregistrovaný)

Ja jsem vytvoril v ramci BP format modelu, exportni skript pro blender a knihovnu pro nacteni a zobrazeni v OpenGL. Viz http://www.stud­.fit.vutbr.cz/~xsa­laj02/bptut/

Vitalia.cz: 7 originálních adventních kalendářů pro mlsné

7 originálních adventních kalendářů pro mlsné

DigiZone.cz: V Plzni odstartovalo Radio 1

V Plzni odstartovalo Radio 1

DigiZone.cz: R2B2 a Hybrid uzavřely partnerství

R2B2 a Hybrid uzavřely partnerství

DigiZone.cz: SES zajistí HD pro M7 Group

SES zajistí HD pro M7 Group

Vitalia.cz: To nejhorší při horečce u dětí: Febrilní křeče

To nejhorší při horečce u dětí: Febrilní křeče

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Root.cz: Certifikáty zadarmo jsou horší než za peníze?

Certifikáty zadarmo jsou horší než za peníze?

Vitalia.cz: Nejlepší obranou při nachlazení je útok

Nejlepší obranou při nachlazení je útok

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Vitalia.cz: Test na HIV je zdarma i za pět set

Test na HIV je zdarma i za pět set

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí

120na80.cz: 5 nejčastějších mýtů o kondomech

5 nejčastějších mýtů o kondomech

Vitalia.cz: Jak vybrat ořechy do cukroví a kde mají levné

Jak vybrat ořechy do cukroví a kde mají levné

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

Vitalia.cz: Pamlsková vyhláška bude platit jen na základkách

Pamlsková vyhláška bude platit jen na základkách

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

120na80.cz: Co všechno ovlivňuje ženskou plodnost?

Co všechno ovlivňuje ženskou plodnost?

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

Lupa.cz: Kdo pochopí vtip, může jít do ČT vyvíjet weby

Kdo pochopí vtip, může jít do ČT vyvíjet weby

DigiZone.cz: Česká televize mění schéma ČT :D

Česká televize mění schéma ČT :D