Virtualni svjetovi i virtualni ljudi na Mrezi

1. Uvod

Brzi napredak trodimenzionalne racunarske grafike, razvoj i popularizacija Interneta, kao i potraznja za alatima za suradnju pomocu racunala (Computer Supported Cooperative Work) potakli su istrazivanja na polju Umrezenih Virtualnih Okruzenja (Networked Virtual Environments). Sustavi ovog tipa omogucuju slobodno kretanje i djelovanje vise korisnika u zajednickom virtualnom okruzenju putem mreze. Komunikacijski mehanizam se brine za odrzavanje konzistencije virtualnog svijeta svih korisnika: svi moraju vidjeti jednako okruzenje u svakom trenutku; akcije svakog korisnika moraju biti vidljive svima ostalima.
Nakon kratkog uvoda u virtualna okruzenja opisati cemo osnovne principe rada Umrezenih Virtualnih Okruzenja (UVO), te sustav Virtual Life Network (VLNET), razvijen u suradnji Sveucilista u Zenevi i Savezne Politehnicke Skole u Lausanni.
S obzirom na prosirenost VRML-a, te paznju koju pobudjuje u (informatickoj) javnosti, istrazivanja na podrucju UVO tesko mogu ignorirati ovaj standard. Stoga cemo ukratko opisati sto je VRML, sto bi VRML mogao postati u skoroj buducnosti, te kakva je veza VRML-a i Umrezenih Virtualnih Okruzenja, pogotovo sustava VLNET.

2. Virtualni predmeti, virtualni svjetovi, virtualni ljudi

Virtualni predmet je opis nekog predmeta u memoriji racunala, pod uvjetom da racunalo omogucava vjerodostojno trodimenzionalno predocenje opisanog predmeta iz kuta gledanja koji korisnik moze interaktivno mijenjati. Kako bi graficko predocenje bilo moguce, opis predmeta mora minimalno sadrzavati definiciju geometrije predmeta, te svojstva povrsinskog materijala o odnosu na svjetlo (boja, sjaj, prozirnost...). Da bi se poboljsao dozivljaj stvarnosti i uporabna vrijednost, virtualni predmeti mogu imati definirana ponasanja koja mogu ovisiti o akcijama korisnika. Na primjer, za virtualni sat je pozeljno da pokazuje tocno vrijeme; za bilo koji predmet je (najcesce) pozeljno da pocne padati ako je ostavljen slobodno u prostoru. Definicija ponasanja mora postojati zajedno s opisom predmeta.
Virtualni svijet, ili virtualno okruzenje, je virtualni predmet ili skup virtualnih predmeta koji kod korisnika stvaraju predodzbu da se nalazi i krece unutar prostora u kojem se moze orijentirati. Virtualni covjek je virtualni predmet koji izgledom i ponasanjem slici covjeku (ovo podrucje istrazivanja je daleko kompleksnije nego sto bi se dalo naslutiti iz ove jednostavne definicije). Slika 1. prikazuje virtualni predmet (sat) i virtualne ljude u virtualnom svijetu.

--SLIKA 1--

3. Umrezena Virtualna Okruzenja (UVO)

3.1. Princip UVO

--SLIKA 2--

Slika 2 shematski prikazuje dva korisnika u jednostavnom UVO-u koje se sastoji od jednog okruglog stola. Svaki korisnik vidi virtualno okruzenje na svom ekranu i moze se u njemu kretati (npr. pomocu misa), te vrsiti odredjene radnje na predmetima (npr. pomaknuti stol). U okviru u sredini slike je prikaz virtualnog okruzenja iz neutralne perspektive. Oba korisnika postaju dio virtualnog okruzenja i prikazani su u njemu pomocu virtualnih ljudi. Pozicija virtualnog covjeka u okruzenju odgovara tocki iz koje korisnik gleda okruzenje. Prema tome, korisnik ne vidi svoje vlastito virtualno tijelo (ili samo djelomicno, npr. ruke), ali vidi virtualno tijelo drugog korisnika, dakle moze vidjeti gdje se on nalazi u okruzenju i sto radi. U primjeru na slici 2 svaki korisnik gleda stol sa svoje strane i vidi drugog korisnika nasuprot.
Na potpuno istom principu virtualno okruzenje moze biti napuceno vecim brojem korisnika pri cemu sva racunala moraju biti povezana mrezom.

3.2. Osnovna svojstva UVO

3.2.1. Komunikacijska struktura

Komunikacijska struktura i protokoli unutar UVO moraju ispunjavati slijedece funkcije:

3.2.2. Prikaz korisnika

Da bi korisnik bio svjestan prisustva drugih korisnika u virtualnom okruzenju potrebno je svakog korisnika na neki nacin graficki predociti. Osim cinjenice da je netko prisutan, zalimo znati i gdje se nalazi, u kojem smjeru gleda i sto radi. Osim ovih funkcija, prikaz korisnika treba posluziti i za medjusobnu identifikaciju, te za sto bolju komunikaciju izmedju korisnika.

3.2.3. Manipulacija i ponasanje predmeta

Ova problematika nije svojstvena samo Umrezenim Virtualnim Okruzenjima, nego i virtualnim okruzenjima opcenito. Pozeljno je da predmeti imaju prirodna ponasanja, pogotovo reakcije na radnje korisnika (o ovome je vec bilo govora u poglavlju 2).

4. Virtual Life Network (VLNET)

Virtual Life Network (VLNET) pripada kategoriji Umrezenih Virtualnih Okruzenja. Sustav je razvijen u suradnji laboratorija MIRALab (Sveuciliste u Zenevi) i Laboratorija Racunarske Grafike (Laboratoire d'Infographie, Savezna Politehnicka Skola u Lausanni). U ova dva laboratorija postoji dugogodisnje iskustvo u modeliranju i animaciji ljudskog tijela, sto je iskoristeno za realistican prikaz korisnika koji je jedna od najvaznijih odlika sustava (otuda i ime). Osim do sada nabrojenih funkcija UVO, VLNET posjeduje dodatne funkcije: medjusobno povezivanje virtualnih svjetova, te mogucnost uvodjenja "samostalnih" virtualnih ljudi u okruzenje.

4.1. Komunikacijska struktura VLNET-a

Komunikacije u VLNET-u su zasnovane na konceptu client/server (slika 3). Kada korisnik (upotrebom VLNET-client aplikacije) uspostavi vezu sa VLNET- -serverom, server salje opis virtualnog svijeta, te prima podatke o grafickom prikazu korisnika. Ukoliko su drugi korisnici vec prisutni, svaki ce dobiti poruku o prisustvu novog korisnika te njegov opis. Ovim je veza uspostavljena.
Sve kretnje i ostale akcije korisnika se salju serveru, koji ih prenosi svim ostalim korisnicima.
Bilo koji predmet u VLNET okruzenju se moze deklarirati kao veza sa nekim drugim serverom. Kada se korisnik priblizi takvom predmetu, veza sa trenutnim serverom se prekida i uspostavlja se veza s novim serverom, cime korisnik stice dojam premjestanja u novi virtualni svijet.

--SLIKA 3--

4.2. Prikaz korisnika

--SLIKA 4--

Graficko predocenje ljudskog tijela je zasnovano na viseslojnom modelu prikazanom na slici 4. Na najnizem nivou je model kostura sa 74 stupnja slobode gibanja. Ova struktura omogucava upravljanje gibanjem tijela. Na kostur je vezana struktura tzv. metaball-a koja tijelu daje oblik. Iz ove strukture se upotrebom jos jednog medjusloja koji sluzi za ubrzanje postupka dobiva konacni prikaz tijela u obliku mreze poligona. Ovakav viseslojni model omogucava potpunu kontrolu tijela uz relativno vjerodostojne deformacije prilikom gibanja.
Grafickim predocenjem tijela obavljeno je tek pola posla. Potrebno je jos ostvariti kretanje tijela koje odrazava akcije korisnika. Korisnik upravlja svojom pozicijom unutar virtualnog svijeta, te pozicijom ruke (za manipulaciju predmeta) pomocu misa ili neke prikladnije ulazne jedinice. Ovime su definirane pozicija i orijentacija glave i desne ruke. Na osnovu ovih podataka kompleksne motoricke funkcije proizvode pokrete hodanja i pokrete ruke.
Jedan od najvaznijih vidova komunikacije medju ljudima je izraz lica; stoga je u VLNET-u omogucena video komunikacija ukoliko je korisnik opremljen kamerom. Iz digitaliziranog videa se izdvaja dio slike koji sadrzi lice korisnika i salje preko mreze ostalim korisnicima. Upotrebom "texture mapping" metode, slike lica korisnika se reproduciraju na licu virtualnog covjeka (slika 5).

--SLIKA 5--

4.3. Manipulacija i ponasanje predmeta

Predmeti unutar VLNET okruzenja se mogu deklarirati kao slobodni ili fiksni. Slobodne predmete korisnik moze pomicati pojedinacno ili vise njih odjednom, te ih organizirati u grupe. Prilikom ispustanja predmeta simulirana je sila teze; korisnik moze trenutno iskljuciti silu teze i ostaviti predmet u zraku ako to zeli.
Bilo kojem predmetu se moze pridodati neka od definiranih motorickih funkcija. Na primjer, kazaljkama na satu se jednostavno mogu pridodati funkcije rotacije i tako postici da sat pokazuje tocno vrijeme. Trenutno je za dodavanje novog tipa motoricke funkcije potrebno kompilirati citav program, no uskoro se planira mogucnost upravljanja predmetima pomocu nezavisnih mini-programa napisanih u jeziku C ili pomocu Java applet-a.

4.4. Samostalni virtualni ljudi

U VLNET okruzenje moguce je ukljuciti samostalne virtualne ljude koji se izgledom ne razlikuju od ostalih korisnika, ali njihovo ponasanje nije odredjeno akcijama korisnika nego "inteligentnim" algoritmom odlucivanja. S tehnicke strane, samostalni virtualni ljudi koriste potpuno jednake komunikacijske protokole, prikaz korisnika i algoritme za manipulaciju predmeta kao i ostali korisnici, samo sto je ulazna jedinica zamijenjena jedinicom "inteligentnog ponasanja". Ovo je jos u eksperimentalnoj fazi.

4.5. Primjene VLNET-a

VLNET je zamisljen kao sustav opce namjene. Sadrzaj svakog virtualnog svijeta definira njegovu namjenu. Iskusali smo nekoliko mogucih primjena ovakvog sustava, od kojih su neke prikazane na slici 6.

--SLIKA 6--

4.5.1. Tele-kupovina (teleshopping)

U suradnji sa tvrtkom Chopard iz Zeneve (proizvodjac satova) razvili smo virtualno okruzenje u kojem prodavac potencijalnom kupcu pokazuje razne modele satova uz mogucnost jednostavnih operacija poput promjene remena. Ova primjena je demonstrirana na izlozbi TELECOM 95 u Zenevi, sa "kupcem sata" u Singapuru. Veza izmedju Zeneve i Singapura je ostvarena putem ATM-a.

4.5.2. Primjene u medicini

Trodimenzionalni modeli ljudskog tijela i organa mogu biti zajednicki analizirani unutar virtualnog okruzenja. Ovo je zanimljivo za obrazovne primjene. Uz upotrebu metoda za rekonstrukciju 3D organa iz medicinskih slika (npr. MRI) moze se zamisliti i primjena u dijagnostici gdje bi se VLNET mogao primijeniti za konzultaciju sa udaljenim specijalistom u kompliciranim slucajevima.

4.5.3. Virtualni sastanci

Jedan od eksperimentalnih VLNET svjetova je virtualna soba za sastanke u kojoj je na raspolaganju virtualni projektor diapozitiva. U razvoju su i druga pomagala (virtualna ploca, virtualni video) koja ce poboljsati mogucnosti komunikacije medju korisnicima.

4.5.4. Uredjenje prostora

U ovoj eksperimentalnoj aplikaciji korisnici mogu zajednicki premjestati namjestaj u prostoriji.

4.5.5. Zabava

Mogu se zamisliti razne igre unutar virtualnih svjetova. Trenutno postoje VLNET svjetovi za igranje saha, te za rjesavanje 3D slagalice. U razvoju je "samostalni" virtualni covjek koji ce igrati tenis protiv korisnika.

5. Virtual Reality Modeling Language (VRML)

5.1 Sto je VRML?

VRML je standard koji omogucava opis virtualnih svjetova i njihovu dostupnost putem World Wide Web-a. VRML 1.0 je zasnovan na Silicon Graphics-ovom Open Inventor ASCII formatu za opisivanje 3D objekata. U VRML-u se mogu opisati staticki 3D predmeti i svjetovi, te pridodati veze predmeta prema drugim VRML modelima, WWW stranicama ili multimedijskim objektima (video, audio, slike). Ove veze rade na potpuno jednak nacin kao veze u hypertext dokumentima.
Korisnik opremljen VRML browser-om moze pristupiti bilo kojem VRML svijetu na Mrezi, slobodno se pomicati unutar njega, te slijediti veze prema drugim svjetovima ili Web stranicama.

5.2. VRML 2.0

Premda VRML 1.0 pruza zanimljive mogucnosti, ovaj standard je ipak prilicno ogranicen. Najveci nedostatak je staticnost VRML modela: predmeti u VRML svijetu se ne micu i ne reagiraju na akcije korisnika. Na bazi nekoliko prijedloga uskoro ce biti definiran novi standard VRML 2.0. Prema nekim prognozama najvise sanse da bude prihvacen kao standard ima prijedlog Silicon Graphics-a pod nazivom "Moving Worlds" (ovaj prijedlog podrzavaju jos Netscape, Sony i citava lista drugih tvrtki). Neki smatraju da ce prevagnuti prijedlog Microsoft-a "ActiveVRML", no autori su skloniji prvoj pretpostavci tako da cemo ukratko opisati "Moving Worlds" prijedlog za VRML 2.0. Ovaj prijedlog ukljucuje cetiri vazna prosirenja: animacija, interakcija, zvuk i definicija prototipa.
Animacija je omogucena putem vanjskih scriptova koji mogu upravljati odredjenim parametrima unutar virtualnog svijeta. Nije definirano koji jezik treba biti upotrebljen za ove scriptova, ali izmedju redaka se cita Java.
Interakcija je moguca putem senzora koji reagiraju na akcije korisnika i salju odgovarajuce poruke upravljackom script-u.
Izvori zvuka mogu biti tockasti ili usmjereni; oba tipa imaju ogranicenu udaljenost s koje se mogu cuti.
Definicija prototipa omogucava laksi razvoj klasa slicnih objekata.

5.3. VLNET i VRML

Mogucnosti koje pruza VRML su podskup mogucnosti VLNET-a. Ovo ce, doduse u manjoj mjeri, jos uvijek biti slucaj s VRML-om 2.0 (u sklopu standarda se ne planira podrska visekorisnickog nacina rada). S druge strane, VRML je vec prilicno rasiren, dok VLNET upotrabljavaju samo autori i nekolicina partnera. Stoga je namjera autora omoguciti kompatibilnost s VRML-om na (za korisnika) jednostavan nacin, ali istovremeno zadrzati dodatne mogucnosti VLNET-a i dalje ih prosirivati. U razvoju je nova verzija VLNET-a zasnovana na ovakvom pristupu. Ova nova verzija koristi HTTP protokol za prijenos opisa virtualnog svijeta (kao i VRML), dakle potrebno je imati standardni HTTP server. Uz to ce biti potreban VLNET mini-server koji ce sluziti za visekorisnicku komunikaciju. Na ovaj nacin ce biti moguce na bilo koji server koji sadrzi VRML svjetove jednostavno dodati visekorisnicki nacin rada. VLNET ce podrzavati VRML format podataka, ali ce zadrzati i svoj vlastiti format radi mogucnosti prosirivanja. U ovisnosti o tipu servera i formatu podataka, biti ce moguci slijedeci nacini rada:

SERVER          FORMAT          NACIN RADA
		PODATAKA
------------------------------------------------------------
HTTP            VRML            Standardni VRML browser

HTTP+VLNET      VRML            Visekorisnicki rad

HTTP+VLNET      VLNET           Visekorisnicki rad + dodatne
				mogucnosti VLNET-a
Kakve ce biti dodatne mogucnosti VLNET-a u odnosu na VRML 2.0 za sada je tesko reci. U odnosu na VRML 1.0 VLNET ima prednost animacije i interakcije. Ove funkcije ce biti ukljucene u VRML 2.0, no pitanje je na koji tocno nacin i sto bi VLNET mogao pruziti osim svoje osnovne prednosti - visekorisnickog nacina rada.

   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   Igor Pandzic                         Igor.Pandzic@cui.unige.ch
   MIRALab
   University of Geneva                 tel. +41/22/705 76 56
   24, rue General-Dufour                           705 77 63
   CH-1211 GENEVE 4
   SWITZERLAND                          fax  +41/22/705 77 80
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


Povratak