PC Press
O nama
O nama
Pretplata
O nama
Postanite saradnik PC-ja
Kontakt sa redakcijom
PC Press
Novi broj
Novi broj   
Pretrazivanje
Arhiva
Arhiva   
PC Online
PC Plus   
Specijalna izdanja
Softver Softver
PC #79 : Jun 2002

 Naslovna  Sadržaj 
Stevan Josimović  

Još ubedljiviji 3D Nosorog

Pre otprilike tri godine predstavili smo paket Rhinoceros, samostalni NURBS modeler koji je ponudio ozbiljne alate tada uglavnom nepoznate u mainstream paketima. Danas predstavljamo njegovog naslednika.

Modeliranje trodimenzionalnih objekata uz pomoć računara je poslednjih godina doživelo pravi procvat. U početku su umetnici bili osuđeni na korišćenje više različitih alata, u nedostatku programa koji je mogao „sve“. Danas to svakako nije slučaj jer je opšti trend integracije iznedrio vrhunske programske pakete za trodimenzionalno modeliranje, koji mogu da osenče, ali i animiraju. Zato se čini da je postojanje programa namenjenog isključivo modeliranju retrogradna pojava. Da li je zaista tako?

Nosorog je opstao

Mnoge stvari su se promenile, iskristalisale, a pažnju na novu verziju Rhino-a skrenuli su nam sve češći navodi u konferencijama koje se bave 3D kompjuterskom animacijom. Ispostavilo se da je Rhinoceros 2.0 veoma koristan pomoćni alat, što se ne odnosi samo na njegove modelarske sposobnosti na polju NURBS-a, već se često pominje i njegova odlična podrška formatima fajlova koje proizvode razni „3D“ programi. Zainteresovali smo se za ove navode i rešili da pažljivo pogledamo „zverku“.

Novi Rhinoceros je zadržao koncepciju prethodne verzije. Korisnički interfejs je tradicionalistički podeljen na četiri projekcije: tri ortogonalne i perspektiva. Sama radna površina može se menjati i konfigurisati prema potrebama korisnika ili prema zahtevima projekta na kome se radi. Zadržan je konzistentan sistem menija u najboljem Windows maniru, mada je spisak opcija obogaćen.

Pomenimo i interfejs ka Rhino skriptu odnosno komandnu liniju, što znači da se sve naredbe mogu po želji otkucati. Mogu se menjati parametri svih komandi, a ova linija služi i kao odličan vodič kroz upotrebu komplikovanijih alata u kojima su neophodne višestruke selekcije i/ili akcije. Komandna linija možda izgleda kao atavizam, s obzirom na to da ceo sistem njene upotrebe neodoljivo podseća na rane verzije AutoCAD-a, ali je u stvari ona jedna od najčvršćih koncepcija na kojima se bazira Rhinoceros. U prilog tome govori i činjenica da danas gotovo nema 3D paketa u kome ne postoji konzoliki interfejs ka native skript jeziku (setimo se MEL-a u paketu Maya ili Lscript komandera u novoj verziji Lightwave-a).

Podrška za OpenGL

Interesantna je i Rhinoceros-ova upornost po pitanju senčenog prikaza u viewport-ovima. Naime, Rhino je u prethodnoj verziji posedovao isključivo sopstveni senčeni wireframe shader, bez podrške za dominantni OpenGL. U novoj verziji podrška za OpenGL postoji, ali se izvršava kao eksterni shader, što znači da možete da vidite kako objekat izgleda u OpenGL-u, da ga zavrtite, ali pri prvoj operaciji OpenGL prikaz se vraća na osnovni način senčenja. Deluje čudno, ali postoje opravdani razlozi za usvojenu koncepciju.

OpenGL prikaz je interesantan (i koristan) kada su u pitanju poligoni – tada jasno vidite njihove granice, da li na objektu postoje „rupe“, da li tekstura dobro „leži“ i slično. Rhinoceros radi sa matematičkim modelima, dakle sa kontinualnim objektima beskonačne rezolucije, gde je mnogo korisnije da vidite kontrolne krive i tačke, što i nudi Rhinoceros-ov shader. Kroz taj senčeni model u perspektivi možete selektovati krive i tačke i pomerati ih u bilo kom viewport-u; interaktivnost se podrazumeva. Mada u Help-u piše da je moguć permanentan OpenGL prikaz, nije nam pošlo za rukom da ga konfigurišemo.

Kvalitet senčenog prikaza je značajno poboljšan u odnosu na prvu verziju paketa, postoji osnovna podrška čak i za anti-alias, a napredovao je i display hardver koji se i dalje koristi. Sve u svemu, utisak je vrlo dobar, a nekoliko priloženih vežbi za „prohodavanje“ u Rhino interfejsu ubediće vas da je sistem pažljivo projektovan i da je veoma efikasan.

Hardver je značajno napredovao od prethodne verzije, a Rhino je i dalje veoma okretan i brz. Njegovi hardverski zahtevi nisu porasli, mada je preporučena konfiguracija značajno snažnija od one za prethodnu verziju i to pre svega zbog toga što su porasli korisnički apetiti i zahtevi. Rhino i dalje radi odlično na danas tričavih 64 MB RAM-a, a sa razumno komplikovanim modelom neće uzeti više od tridesetak megabajta raspoložive memorije.

Neizbežne stvari

Rhinoceros je zamišljen kao samostalna aplikacija koja proizvodi bolje, preciznije i fleksibilnije 3D modele od modelera integrisanih u animatorskim paketima. Kao takav, Rhino nije imao potrebu za intenzivnom komunikacijom sa drugim softverom, sem, naravno, na export/import nivou, ali nije imao ni planove da tzv. treća strana razvija dodatni softver koji bi pomagao samom modeleru. Ipak, funkcionalnost i fleksibilnost koju donose plug-in-ovi u ostalim paketima za 3D modeliranje bili su preveliki izazov da se plug-in sistem ne pojavi u novoj verziji. Bez obzira na to, nije jasno zašto pristup plug-in sistemu nije dobio svoje mesto u korisničkom grafičkom interfejsu, već je potrebno pozvati plug-in manager iz komandne linije. Broj raspoloživih plug-in-ova je skroman i svodi se pretežno na module za uvoz i izvoz itd. Određeni broj plug-in-ova može se preuzeti sa www.rhino3d.com .

Još jedna od novina naizgled je beznačajna, ali oni koji se profesionalno bave modeliranjem svakako će umeti da je cene: u polje Notes možete uneti napomene o modelu na kome radite, plan za nastavak posla i slične informacije. Koliko puta vam se dogodilo da ste sve mane svog modela prethodne večeri zapisali na papir, ali je on nepovratno zaturen ili izgubljen u „komplikovanom procesu higijenizacije radnog mesta“? Zbog toga je daleko bolje kompletan pisani materijal (koga obično nema previše) držati uz sam model. Notes jeste rudimentaran i nije na nivou analognog sistema to-do liste iz Borlandovih programerskih alata, ali je i dalje veoma funkcionalan.

Noviteti za svakodnevni rad

Od važnijih noviteta „koji život znače“ ili koji će bar život korisnika učiniti lakšim tu je najpre grupisanje objekata, njihovo referenciranje preko grupe i sve što uz to ide. Zatim tu je multi-document (u Rhino terminologiji multi-workspace) podrška, a interesantna je i mogućnost konfiguracije različitih delova korisničkog interfejsa za različite projekte. Dakle, imate dva otvorena projekta koji izgledaju (ponašaju se) drugačije!

Osim toga što se uz komandnu liniju „ušunjao“ i Rhino skript, Rhinoceros je dobio podršku i za VBscript i JScript, a sve kroz plug-in sistem. Ovo omogućava petlje, izbor fajlova sa kojima se radi, promenljive i sve ostalo što mogu da pruže skript jezici. Dovoljno je napisati skript sa ekstenzijom .rvb, a zatim iz komandne linije koristiti LoadScript, RunScript, StopScript i ConfigScript.

Uz sve to, Rhino je konačno dobio i kontekstni meni na desnom tasteru miša. Olakšana je i selekcija objekata u situaciji kada je više ivica različitih objekata preklopljeno na jednom mestu. Prosto se pojavi listbox sa svim preklopljenim entitetima, a kako korisnik prelazi mišem preko svakog od njih tako taj entitet zasvetli u editoru, te nije neophodno imenovati površi i ivice, što bi bio zamoran posao. Poboljšanja je toliko da višestruko prevazilaze ambicije ovakvog teksta.

Specijaliteti kuće

Neki od alata za NURBS modeliranje koje poseduje Rhino su impresivni. Jedan od onih koji „oduzimaju dah“ je obaranje ivica, Fillet Edge. Možda zvuči trivijalno, ali mainstream 3D paketi retko poseduju adekvatne alate za ovu operaciju. Preciznost koju nudi Fillet Edge je pri tome fantastična, a sama operacija je jednostavna: unesete željeni radijus, odaberete ivice na objektu koje želite da „oborite“ i pritisnete Enter. Ivice možete birati iz bilo kog viewport-a, ali je svakako najlakše to učiniti iz perspektive. Ukoliko kombinujete različite vrednosti za radijus prilikom korišćenja ovog alata, dobro će vam doći i mogućnost da pronađete „gole“ ivice tj. ivice koje nisu spojene sa drugim ivicama. Ovo je naročito značajno ukoliko pripremate objekat za poligonalni renderer jer ćete kasnije mnogo više truda uložiti u spajanje većeg broja poligona i verteksa, a rezultat nikad neće biti dovoljno dobar.

Pravu poslasticu u novoj verziji predstavlja i veoma jednostavno kotiranje objekata u planarnim projekcijama, što može biti veoma korisno ukoliko „dižete“ neke tehničke crteže u tri dimenzije. Ove kote se lako uklanjaju iz editora, a njihovo korišćenje je toliko jednostavno da ih bez problema možete koristiti i za premeravanje objekata. Podsećamo vas da je Rhinoceros možda i najjači u tehničkom aspektu modeliranja, tako da je crtanje višestepenih krivih, tehničkih lukova, anotacionih strelica i sličnih pikanterija dečja igra.

Vrhunac tehničkih mogućnosti Rhino dostiže Analyze menijem u kome se nalazi pregršt neočekivanih opcija. Tu su: procena zauzete oblasti, zapremine sa sve procenom greške, hidrostatike (?!), graf zakrivljenosti, devijacije i geometrijskog kontinuiteta krivih, zakrivljenost površi, kontrola UV koordinata za svaku tačku na objektu itd.

Strategija Nosoroga

Još u prethodnoj verziji Rhinoceros-u je nedostajao kvalitetniji renderer. Situacija se nije promenila ni sa ovom verzijom, ali su Robert McNeel i saradnici ovoga puta svesni tog nedostatka. S obzirom na to da je odlična podrška mainstream render paketima sada još bolja, računa se lakonski da prosečni korisnik već ima omiljeni render alat. Ipak, podrška za Persistance Of Vision freeware renderer otišla je tako daleko da je moguće eksportovati čak i point svetla. Direction svetla nisu podržana od strane POV-a, pa ih i Rhino preskače, iako sam ima podršku i za njih. Mnogi veoma kvalitetni modeli u galeriji su renderovani baš ovim programom, pa se nećemo iznenaditi plug-in-u koji direktno iz Rhinoceros-a renderuje objekte POV radiosity algoritmom.

Osim bogatog skupa alata za NURBS modeliranje, aduti Rhino-a su pre svega izuzetna okretnost i performanse kakve se retko sreću u aplikacijama ovog tipa. Zatim je Rhinoceros program koji košta relativno malo u poređenju sa konkurencijom, što će verovatno biti razlog da se nađe na mestima gde su potrebne višestruke licence. Dovoljno pažnje je posvećeno podršci mainstream paketima, tako da Rhino ne ograničava svoje korisnike ni sa jedne strane. Uz sve to, Help sistem je vrlo funkcionalan i koncizan (doduše, tutoriali se nisu menjali još od verzije 0.8b). Rhino će (p)ostati stalni igrač u 3D utakmici – tematske konferencije ukazuju na to da su ga širi krugovi korisnika već prihvatili.