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 #42 : Januar 1999 Knjiga 50 godina racunarstva u Srbiji

 Naslovna  Sadržaj 
Stevan Josimović  

Snaga jednog nosoroga

Ako ste profesionalni dizajner, Rhinoceros je pravi alat za vas, a o nabavci mogu da razmisle i dizajneri-amateri.

Dizajniranje i vizuelizacija su oblasti ljudskog delovanja, u kojima računari odavno predstavljaju „alat broj 1“. Veoma je važno imati program koji vam omogućava da brzo i lako materijalizujete svoje ideje. Na jedan takav pokušaj čekali smo gotovo pet godina: više od dve godine program je bio u beta fazi, a testirala ga je armija od 110,000 korisnika. Pre nekog vremena smo vam skrenuli pažnju na Rhinoceros, a sada je došlo vreme da bacimo pogled na konačnu verziju. „Nosorog“ je među nama – bez panike molim!

Miroljubivi Rhino

Rhinoceros (ili od milošte Rhino) ne zahteva da menjate navike i omiljeni program za render – Robert McNeel & Associates tvrde da je njihov program zapravo idealan partner programima za render i animaciju. Mnogi popularni render programi podržavaju samo osnovne alate za NURBS modeliranje, a baš na tom polju je Rhinoceros najjači. Kada tome dodate i široku paletu fajl formata koje podržava, sasvim je jasno da je ovaj program ozbiljan kandidat za „idealnog partnera“. NURBS je skraćenica od non-uniform rational B-spline – to je način predstave 3D geometrijskih figura. O njemu možete razmišljati kao o „Bezierovim krivama“ za 3D objekte, što znači da je Rhinoceros za 3D modeliranje ono što je CorelDraw u svetu 2D ilustracija.

NURBS postaje industrijski standard, pa ćete svoje modele uskoro moći da koristite u raznim drugim programima za modeling, rendering i animaciju. Kao i sve što je vezano za matematiku, NURBS je precizno definisan, što olakšava pisanje biblioteka rutina za operacije i manipulisanje NURBS objektima. Zatim, NURBS objekti su daleko precizniji i koncizniji od mesh objekata, zumiranjem ne gube „rezoluciju“ (nema aproksimacija krivih površi poligonima), a NURBS objektima je potrebno daleko manje memorijskog prostora.

Ipak, poligonalne aproksimacije i dalje imaju neke prednosti, pre svega u domenu brzine renderisanja slika – mnoge jednostavnije modele i dalje je rentabilnije raditi u poligonalnom modeleru. Iako NURBS može da zabeleži i najjednostavnije geometrijske oblike (linije, krugove, uglove...), Rhino je ipak namenjen kreiranju komplikovanih objekata u industrijskom dizajnu, ili vrhunskim animacijama. Više o tehničkoj prirodi i formulama NURBS-a pročitaćete na cs.wpi.edu/~matt/courses/cs563/talks/NURBS.html ili na devworld.apple.com/techsupport/develop/issue25/schneider.html.

Snaga je u koncepciji

Rhinoceros podržava osnovne geometrijske tipove objekata: tačke, NURBS krive, NURBS površi, čvrste (solid) objekte i poligonalni mesh. Mesh je tu zbog razmene podataka sa popularnim paketima za rendering i animaciju, a njegova složenost se može precizno kontrolisati prilikom izvoza NURBS geometrije iz Rhinoceros-a. Ostali osnovni geometrijski tipovi podataka sasvim su u skladu sa načelima Euklidove geometrije, što olakšava navikavanje za softver.

Pored čiste osnovne koncepcije, Rhino svoj rad zasniva i na tzv. konstrukcionim ravnima. One olakšavaju pozicioniranje u 3D radnom prostoru Rhino-a: sve što se događa sa objektima događa se na konstrukcionoj ravni. Svaki pogled, paralelni ili perspektivni, ima svoju konstrukcionu ravan koja se može menjati. To se relativno retko čini, mada se lako može zamisliti situacija u kojoj bi to bilo jedino rešenje za modifikaciju nekog objekta. Perspektivni pogled preuzima konstrukcionu ravan Top pogleda ili horizontalnu konstrukcionu ravan. Ako treba pozicionirati nešto van konstrukcione ravni, dovoljno je iz nekog drugog pogleda najaviti dodatno pozicioniranje u željenom pogledu, pritiskom na Control taster.

Već posle nekoliko sati rada sa Rhino-om steći ćete utisak da svaki entitet na ekranu može biti postavljen tačno tamo gde želite. To, pored konstrukcionih ravni, omogućava fenomenalni Object Snap, kojim ukazujete na karakteristične tačke na objektu koje vas najviše interesuju. Možete favorizovati pozicioniranje na kraj neke krive ili tik uz neki objekat, površ ili krivu, tačku koja predstavlja teme čvrstog tela, centar krive, luka... Object Snap je specijalitet koji ćemo sigurno viđati i u konkurentskim programima – najlepše je što se može menjati usred neke operacije, ne ometajući njeno izvođenje.

Mehanizam ovog alata se zasniva na činjenici da na ekranu postoje dva kurzora: prvog mišem kontroliše korisnik, dok drugi kontroliše sam Rhino, pokazujući tačku 3D prostora na koju zapravo ukazuje korisnikov kurzor. Taj drugi kurzor zove se marker i pruža veliku sigurnost i potporu u radu – ne možete da pogrešite, jer svakog trenutka u sve tri projekcije i u perspektivi vidite gde ukazuje vaš kurzor. Efekat je isti kao kod Grid Snap-a koga imaju mnogi popularni programi, s tim što Rhino-ov marker to radi sa karakterističnim tačkama u tri dimenzije. Postoji, naravno, i regularni Grid Snap.

Alat za svaku krivu

Pozicioniranje i udobnost koju pružaju konstrukcione ravni ne bi bili dovoljni da nije odličnih alata za konstrukciju i modifikaciju krivih, površi i čvrstih tela. Krive, koje su ujedno i osnovni tip u Rhinoceros-u (tačke su samo njihov podtip), mogu da se stvaraju na veliki broj načina. Rhino pod krivima podrazumeva linije, krugove, elipse, lukove, linije slobodnog oblika i krive tipa conic, helix i spiral. Svaki od tih oblika možete crtati automatski u određenom položaju u odnosu na druge objekte. Tako krug možete nacrtati pomoću centra i radijusa, prečnika, tri tačke, dve tangente i radijusa ili pak preko tri tangente.

Krug prilikom crtanja možete automatski postaviti normalno na željenu krivu, što je idealna stvar za extrude. Alata za modifikaciju ima previše da bismo sve ovde navodili, ali pomenimo Fillet za „peglanje“ oštrih spojeva među krivima i Chamfer, a tu su i Offset, Extend... Vredi probati i kreiranje krivih na osnovu objekata: presek dva objekta, projekcija, kontura, silueta...

Na sličan način su podržane i površi: možete ih stvarati pomoću temenih tačaka, ivičnih krivih, ravanskih krivih, operacijama extrude, loft, revolve, rail revolve, patch... Posebno interesantne metode su Sweep 1 Rail i Sweep 2 Rail, pomoću kojih se kreiraju komplikovani objekti, a na Rhino-ovom sajtu na Internetu se mogu videti objekti urađeni gotovo isključivo korišćenjem ove dve metode. Tu su i standardni alati Extend, Fillet, Chamfer i Offset, ali i napredna opcija Blend, pomoću koje možete spojiti ivice dveju krivih tako da izgledaju kao jedna.

Čvrsti objekti

Čvrsti objekti su sam „vrh Rhino planine“. Pored svih 3D primitiva kojih se možete setiti, u Rhino-u možete stvarati čvrste objekte extrude-ovanjem površi ili ravanskih krivih, Boolean operacijama nad postojećim objektima i kombinacijom ovih metoda. Boolean operacije smo hvalili još u prikazu beta verzije, jer su precizne i brze, a nisu osetljive ni na višestruku primenu, pa objekte možete „seckati“ i dograđivati po ukusu.

Poseban deo programa posvećen je analizama, počevši od ispravnosti objekata i traženja otvorenih ivica, preko grafova i kruga zakrivljenosti, geometrijskog kontinuiteta i devijacije, do Mass Properties analiza. Tu su i analiza položaja tačke, dužine krivih, merenje rastojanja između dve tačke, uglova, radijusa u nekim tačkama na krivoj...

Rhino, naravno, poseduje i renderer, koji nije previše moćan, ali je za potrebe modelera sasvim dovoljan. Svetla su rudimentarna, kao i kontrola senki, ali zato može da se renderuje i wireframe preko NURBS objekata, što im daje posebnu draž – izgledaju kao rukom nacrtani. Osim toga, objekti sa „žicom“ preko sebe daleko jasnije prikazuju pravi oblik i dubinu. Objektima možete definisati čak i materijale, odsjaje i transparenciju, tako da je jedina prava mana ovog renderera njegova brzina – Pentium II se dobro „zamisli“ nad iole složenijim objektima. Zato se za konačan izgled modela morate obratiti omiljenom render paketu.

Nejasno je zašto Rhino nije dobio OpenGL podršku: Shader koji trenutno ima je dosta brz, ali objekat prikazuje u jednoj boji, dok ga bilo koja operacija nad objektom vraća u žičani mod, što je neprijatno. Doduše, ovo je tek verzija 1.0 pa se treba nadati da će u nekoj od sledećih i to stići na red.

Božić za dizajnere

Rhinoceros je trenutno najbolji NURBS modeler na tržištu – doneo je na Windows platformu ono što je ranije bilo moguće isključivo na skupim Unix grafičkim radnim stanicama. Njegovi niski hardverski apetiti (486 ili Pentium sa 16 ili 32 MB memorije), izuzetne mogućnosti, strma kriva učenja (uz odlično napisano uputstvo štampano u boji, za samo desetak sati ćete „prohodati“ u Rhino-u) i široka kompatibilnost sa značajnim render paketima, učiniće da Rhino postane jedan od najpopularnijih modelera. Ako ste profesionalni dizajner, Rhino je za vas must have softver, a o nabavci mogu da razmisle i dizajneri-amateri, ali i Web dizajneri, animatori, studenti... Rhino možete probati u demo verziji, koja je potpuno funkcionalna, a preuzećete je sa www.rhino3d.com. Ako vam bude odgovarala, božićni popust je u toku, pa ne treba propustiti dobru priliku...