Integrare sistem educaional online cu spaiu virtual 3D MMO
Coordonator tiinific: Conf. Dr. Ing. Alin Moldoveanu
Absolvent: Alexandru Grdinaru
BUCURETI 2012 2
Cuprins 1. Introducere ..................................................................................................................................................... 4 1.1 Scopul aplicaiei ....................................................................................................................................... 4 1.2 Consideraii de ordin general ................................................................................................................... 5 1.3 Funciile aplicaiei .................................................................................................................................... 5 1.4 Contextul n care a fost dezvoltat aplicaia ............................................................................................. 6 1.5 Categoria de programe n care se ncadreaz aplicaia ............................................................................. 6 1.6 Tehnologii de realizare ............................................................................................................................. 6 2. Concepte i tehnologii folosite ....................................................................................................................... 7 2.1 Realitate virtual ...................................................................................................................................... 7 2.2 Spaiu virtual (Metaverse) ........................................................................................................................ 8 2.3 Realitate augmentat .............................................................................................................................. 10 2.4 Realitate mixat ...................................................................................................................................... 11 2.5 MMO. ..................................................................................................................................................... 12 2.6 SecondLife ............................................................................................................................................. 13 2.7 Moodle ................................................................................................................................................... 13 3. Prezentarea aplicaiei ................................................................................................................................... 17 3.1 Arhitectur (server) ................................................................................................................................ 17 3.2 Funcii principale (module) .................................................................................................................... 24 3.3 Configurare ............................................................................................................................................ 25 3.4 Interfa (client) ...................................................................................................................................... 28 4. Experimente ................................................................................................................................................. 32 4.1 Campusul Universitii Politehnica ........................................................................................................ 32 4.1.1 Hart ............................................................................................................................................... 32 4.1.2 Campus ........................................................................................................................................... 34 4.2 Modele 3D .............................................................................................................................................. 35 4.3 Sloodle ................................................................................................................................................... 36 4.4 Streaming ............................................................................................................................................... 38 5. Perspective de dezvoltare ............................................................................................................................. 40 5.1 Extensibilitate ......................................................................................................................................... 40 5.1.1 Module de regiune .......................................................................................................................... 40 5.1.2 Scipturi ............................................................................................................................................ 41 5.2 Scalabilitate ............................................................................................................................................ 41 6. Testare .......................................................................................................................................................... 43 7. Concluzii ...................................................................................................................................................... 44
Acum civa ani, Jeremy Kemp i Livingstone Daniel au scris o lucrare scurt, n care au comparat unele dintre modurile diferite n care medii virtuale de nvare bazate pe web i lumile virtuale 3D generate de utilizator ar putea sprijini activitile de nvare i educaie. Din acest lucru a venit ideea de a contrui un spaiu virtual bazat pe punctele forte ale celor dou tipuri foarte diferite de mediu, prin integrarea oarecum a acestora [1]. Lucrarea de fa prezint avantajele i potenialul unor spaii 3D MMO cu privirea la activitatea de nvare. Atfel, este experimentat i implementat un prototip ce mbin un sistem online de nvmnt (Moodle), cu o lume virtual interactiv i atractiv, la care se pot conecta, interaciona i colabora simultan o multitudine de utilizatori.
Integrare sistem educaional online cu spaiu virtual 3D MMO
4
1. Introducere 1.1 Scopul aplicaiei Metaversurile i lumile virtuale 3D sunt din ce n ce mai folosite n nvamnt i n activitile de formare pentru a crea experiene de nvare care sunt captivante, autentice i bogate n activiti media. n special, acestea reprezint oportuniti de a structura nvarea la distan n diferite moduri interesante i ncep s ocupe o parte din ce n ce mai important n peisajul nvrii n general. Cu toate c exist un interes din ce n ce mai mare din partea practicienilor i a cercettorilor privind formarea i potenialul de rspndire a cunotinelor prin intermediul acestor medii de nvare unice, tehnologiile actuale folosite pentru crearea lumilor virtuale ofer o serie ntreag de posibiliti care trebuie dezvoltate mai mult. Utilizarea metaversurilor pentru procesul de nvare poate schimba nu doar ceea ce nvm, dar, de asemenea, n mod semnificativ va schimba modul n care nvm, i pentru acest motiv este important s lum n considerare toate implicaiile adoptrii acestora n procesele de nvare i s observm care sunt neajunsurile posibile i problemele generate de aceast integrare. Lumile virtuale pot fi folosite pentru a crea spaii foarte eficiente de nvare. Din moment ce acestea sunt generalizate, mai degrab dect contextuale, ele pot atinge toate disciplinele. Aspectele sociale ale lumii virtuale devin extrem de relevante pentru scopuri educaionale. Aceste lumi faciliteaz asumarea de roluluri i elaborarea de scenarii, care s permit elevilor s-i creeze temporar identiti i sarcini fr a suporta consecine reale. Att universitile ct i industria au recunoscut posibilitile de nvare disponibile n metaversuri i lumi virtuale 3D ca spaii care ofer att libertate ct i un mod interactiv i plcut pentru a crea i de a colabora n procesul de nvare. Metaversurile i lumile virtuale 3D n educaie: ofer o formare profesional unic i un mediu de partajare de cunotine. ofer oportuniti excelente pentru interaciunile de grup. mbuntesc capacitatea de colaborare i competenele de comunicare. permite elevilor de a transfera mai uor nvarea de la un context de nvare ntr-un context real. dezvoltarea competenelor n contruirea de reelele i comuniti de practic promoveaz abiliti de rezolvare a problemelor i de negociere ajuta pe elevi s devin orientai pe obiective i capabili s prevad i de a lucra pentru a obine rezultate genereaz competene n producerea de cunotine promovez procesul nvrii prin simulri i jocuri de rol sprijin creativitatea, explorarea i dezvoltare unei identiti prin metode deschise de nvare dezvolt abilitile i experiena social n nelegerea altor culturi i oameni ofer posibiliti unice de exprimare Prin urmare, scopul acestei lucrri este de a examina potenialul metaversurilor i al lumilor virtuale 3D i de a discuta modul n care acestea ar putea fi folosite i integrate cu instrumente de nvare. Lucrarea ine seama de inovaiile care ar trebui introduse n nvmntul colar i are n vedere cadrele largi care au fost dezvoltate pentru a sprijini concepia i studierea nvrii n lumile virtuale.
Integrare sistem educaional online cu spaiu virtual 3D MMO
5
1.2 Consideraii de ordin general Aplicaia prezentat n lucrarea de fa propune o replic virtual a campusului Universitii Politehnica n care sunt integrate sisteme de educaie i de informare. Lucrarea implementeaz o platform 3D MMO cu acces public care s faciliteze att procesul de nvare ct i accesul la informaii, totul realizndu-se n timp real ntr-o interfa intuitiv i atractiv. Accesul la aceast aplicaie se va face utiliznd o conexiune la internet i un client propriu care va trebui descrcat i instalat. n plus, aplicaia nu are nevoie de un calculator performant, deoarece majoritatea operaiilor sunt realizate de server, clientul realiznd doar afiarea interfeei i interaciunea cu utilizatorul. Iniial va fi necesar i crearea unui cont de utilizator. Avantajele sistemului: acces independent de locaie (online) platforma poate fi accesat de pe orice staie ce dispune de o conexiune la internet, pe care se instaleaz sau este instalat un client interactivitate (3D) fiind un spaiu virtual 3D, utilizatorul poate interaciona cu mediul din jurul su simplitate i uurin n folosire (user friendly) interfaa clientului este foarte simpl, intuitiv i uor de utilizat, dar oferind n acelai timp o multitudine de faciliti socializare i cooperare (MMO) fiind un spaiu multiuser online, acesta ofer funcii de socializare i de interaciune ntre utilizatori implicare (immersive) utilizatorul se va implica direct n activitatea de nvare i de parcurgere a spaiului virtual, susinnd astfel motivaia acestuia prin feedback, rspunsuri, oportuniti de explorare i prin realism n ceea ce privete spaiul desfurrii 1.3 Funciile aplicaiei Aplicaia ofer o suit de aplicaii caracteristice unui sistem 3D MMO, la care se adaug i aplicaii specifice care s faciliteze procesul de nvare. Astfel, aplicaia permite: medii online 3D, multi-user. spaii virtuale 3D de dimeniuni variabile. o multitudine de clieni i protocoale se poate accesa aceeai lume n acelai timp folosind protocoale diferite. simulare fizic i coliziuni n timp real. clieni care creaz coninut 3D n timp real. personalizarea aplicaiilor virtuale prin folosirea de module, plugin-uri i diverse scripturi. legarea la sisteme educaionale online prezentri media streaming n direct funcii sociale i de colaborare teste i lecii integrate Trebuie menionat faptul c fiecare utilizator este reprezentat n spaiul virtual de un avatar customizabil, i beneficiaz de un inventar propriu n care poate salva obiecte, fiiere personale i chiar scripturi.
Integrare sistem educaional online cu spaiu virtual 3D MMO
6
1.4 Contextul n care a fost dezvoltat aplicaia Aplicaia a fost dezvoltat n cadrul proiectului 3D UPB - Replica virtual a Universitii Politehnica Bucureti - sub forma unui spaiu virtual 3D MMO extensibil i reflexiv. Concept state of the art probabil universitatea noastr fiind prima din lume ce va avea un astfel de campus virtual independent care s asigure un suport pentru procesul de nvare. Caracteristicile esentiale definite ale proiectului 3D UPB: model 3D complet i exact: ntreg spatiul real va fi modelat cu mare precizie n 3D MMO (massive multiuser online): un numar mare de utilizatori (sute-mii) pot accesa simultan prin internet spaiul virtual, interacionnd n cadrul acestuia interaciuni complexe: deplasare, aciuni, gesturi, comunicare (text + voce), etc. accent pe socializare, comunicare, grupuri de preocupri comune, gzduirea de evenimente online, etc. extensibil: fiecare utilizator i va putea defini propriul su spaiu virtual n cadrul 3D UPB, pentru a-i prezenta interesele, gzdui evenimente private pentru prieteni, etc. reflexiv i programabil: 3D UPB va oferi un API pentru analiza programatic n timp real a coninutului mediului virtual i definirea de aciuni automate pe care avatarul utilizatorului s le execute, asemntor unor "boi". Acesta deschide calea spre interaciuni complexe, implicnd att utilizatori umani ct i ageni software. Viziunea asupra 3D UPB este a unui sistem deschis, n care, cu ajutorul API-urilor, utilizatorii s dezvolte treptat o mulime de aplicaii dintre cele mai diverse. Cteva dintre acestea sunt deja implementate, ele conturnd doar o idee asupra a ceea ce sistemul ar putea deveni n timp. Un prim prototip al 3D UPB a fost creat n cadrul workshopului "Graphics & Virtual Reality 2009" - desfurat n perioada vacanei de var n cadrul Facultii de Automatic i Calculatoare. ncepnd de atunci dezvoltarea a continuat, proiectul ajungnd aproape de un stadiu beta n care va fi testat i folosit public la nivelul facultii. 1.5 Categoria de programe n care se ncadreaz aplicaia Dup cum s-a mai precizat, aplicaia de fa combin mai multe categorii de aplicaii complexe, integrnd ntr-o singur instan independent concepte de 3D, MMO i E-Learning. Proiectul de fa este un experiment, scopul final fiind nglobarea tuturor funcionalitilor definite n proiectul 3D UPB, asigurnd astfel o replic virtual a ntregului campus a Universitii Politehnica Bucureti, ce ofer funcii complexe i faciliteaz procesul de nvare. Totodat, aplicaia i propune s fie uor de utilizat, accesibil i atractiv. 1.6 Tehnologii de realizare Lumile virtuale sunt spaii complexe ce necesit ca foarte multe tehnologii s lucreze mpreun, ele fiind inspirate din lumea real n care activeaz foarte multe legi. Acest lucru duce la nevoia de mbinare a mai multor domenii, instrumente i tehnologii. Astfel, pentru platforma 3D MMO s-a folosit framework-ul OpenSimulator, la care se conecteaz clieni universali Second Life, pentru platforma educaional s-a folosit un sistem Moodle, iar pentru integrarea celor dou platforme s-a folosit un sistem denumit Sloodle. Crearea i personalizarea lumii virtuale s-a facut att direct din clientul Second Life ce ofer astfel de funcionaliti la un nivel de baz, ct i folosind programe specializate de modelare 3D (3ds Max, Maya, Blender etc), de generare de teren (L3DT) i altele. Integrare sistem educaional online cu spaiu virtual 3D MMO
7
2. Concepte i tehnologii folosite 2.1 Realitate virtual Realitatea Virtual (Virtual Reality) reprezint o simulare generat de calculator a unui mediu 3D n care utilizatorul vizualizeaz i manipuleaz coninutul acestuia. Termenul este compus din dou prti: realitate, prin care ntelegem un mediu natural, perceput de om prin intermediul simurilor i virtual, cuvnt care este folosit frecvent n domeniul informaticii pentru a desemna un mediu care simuleaz pe calculator realitatea obiuit a omului. Reiese faptul c realitatea virtual ofer o modalitate prin care calculatorul i echipamentele specializate pot altera modul n care omul percepe realitatea mediului natural, prin simularea unei alte realiti. La fel ca n lumea real, realitatea virtual este o entitate dinamic, n interaciune permanent cu utilizatorul ntr-un spaiu tridimensional. Utilizatorul unui sistem virtual are libertatea de a explora lumea creat de calculator i de a interaciona direct cu ea. O proprietate important a realitii virtuale este cea a imersivitii care asigur realismul, provoac senzaia de prezen n mediul virtual, adic utilizatorul se simte activ i ca fcnd parte din acel mediu virtual care simuleaz o realitate. La baza acestei simulri st bineneles o combinaie avansat de hardware i software, de o ntreag reea de subsisteme ce comunic ntre ele pentru redarea interaciunii. De-a lungul timpului, s-au ncercat mai multe formulri pentru conceptul de realitate virtual. Cele mai reprezentative ar fi [2]: Realitatea Virtual este un sistem folosit pentru a crea o lume artificiala pentru un utilizator astfel nct acesta s aib impresia c se afl n aceast realitate n care se poate mica i interaciona cu obiectele nconjurtoare [3] Grafica interactiv n timp real cu modele 3D combinat cu o tehnologie de afiare care ofer utilizatorului imersiunea n modelul lumii i posibilitatea manipulrii directe a acestuia [4] Iluzia participrii ntr-un mediu sintetic n locul observrii externe a acestui mediu. RV se bazeaz pe display-uri 3D stereoscopice purtate de utilizator, urmrite, urmrirea minilor/corpului i un sunet binaural. RV este o experien imersiv, multi senzorial [5] Simulri pe calculator care utilizeaz o grafic 3D i astfel de dispozitive, cum sunt DataGlove, pentru a permite utilizatorului s interacioneze cu simularea [6] Realitatea Virtual se refer la medii imersive, interactive, multi-senzoriale, centrate spre utilizator, tridimensionale, generate de calculator i combinarea tehnologiilor necesare construirii acestor medii [7] Realitatea Virtual ne permite s navigm i s vedem o lume n trei dimensiuni n timp real, cu ase grade de libertate, fiind, n esen, o clon (virtual) a realitii fizice [8]. Totui, istoricul acestui concept ncepe n 1984 cu romanul SF Neuromancer a lui Willian Gibson n care apare definit pentru prima dat un termen de ciberspaiu care descrie o lume a calculatoarelor n societate, o realitate artificial: Cyberspace a global artificial reality that can be visited simultaneously by many people via networked computers [9]. Avansnd spre secolul XXI putem observa c acest lucru este din ce n ce mai pronunat, fiecare calculator fiind legat la Internet simultan i deci la o form de realitatea artificial global, determinnd un nou tip de interaciune social. Ciberspaiul ca lume virtual a calculatoarelor conectate, definit astfel iniial de Benedikt ntr-unul din cele mai cunoscute volume de teorie ciberspaial Cyberspace: First Steps este mai putin un construct ficional al unui viitor tiinifico-fantastic i mai mult materializarea prezent a unei infrastructuri comunicaionale aflate ntr-o accelerat dezvoltare tehnic, extinderea acestuia putnd duce la transformarea sa ntr-un habitat individual indispensabil [10]. Totui ciberspaiul nu Integrare sistem educaional online cu spaiu virtual 3D MMO
8
este un sistem electronic, ci mai degraba o experien, fiind descris de Philip DeWitt ca tehnologia utilizat de oameni pentru a face ceea ce genetic sunt programati s fac: s comunice unul cu altul [11]. Putem afirma, ntr-un sfrit, c n ziua de astzi, ciberspaiul poate fi considerat o realitate concret i indispensabil, cel puin prin echivalarea sa cu Internetul: n ceea ce priveste infrastructura de transport, ciberspaiul reprezint integrarea natural i inevitabil a reelelor disparate, luate ca un tot unitar, ce alctuiesc sistemul nervos al societii moderne. [12] Avansarea tehnologic a permis dezvoltarea de calculatoare puternice i maini de lucru cu caracteristici extraordinare. Astfel, calculatoarele personale au devenit staii puternice, iar echipamentele specializate sunt disponibile i accesibile oricrui utilizator. n acest context, dezvoltarea realitii virtuale i migrarea ctre o realitate tridimensional alternativ a fost inevitabil. n acest sens, au aprut din ce n ce mai multe aplicaii specializate ce modeleaz mediul nconjurtor (sisteme de modelare 3D), precum i aplicaii, biblioteci, platforme i chiar limbaje de programare care faciliteaz o implementare relativ uoar a unei simulri i n final a unui spaiu virtual. Vedem c tehnologia actual ofer posibilitatea unui utilizator de rnd de a-i ntreine propriul spaiu virtual prin aplicaii ca Second Life, OpenSimulator sau altele. Totui, tehnologia este complex i necesit alturarea mai multor domenii cum ar fi modelarea 3D, programarea i reelistica. Astfel, modelarea este foarte important ntruct ea asigur crearea mediului virtual realistic, innd cont totui i de performan. Astfel, trebuie gsit un echilibru ntre realismul obiectelor modelate i simulrile fizice care necesit foarte mult procesare hardware. Pentru crearea i redarea efectiv a scenelor grafice din mediile virtuale se utilizeaz biblioteci i interfee grafice, diverse toolkit-uri i API-uri i chiar limbaje de programare destinate special simulrilor. Nici partea de conectivitate nu este mai prejos n complexitate, ntruct mediile virtuale sunt de obicei spaii sociale ce necesit gestionarea unui numr foarte mare de utilizatori conectai simultan i care interacioneaz cu mediul i cu ali utilizatori n timp real. 2.2 Spaiu virtual (Metaverse) [13] n general, lumile virtuale 3D mai sunt cunoscute ca i Metaverse-uri, un concept preluat din romanul Sci-Fi "Snow Crash", scris de Neil Stephenson n 1992. Dei noiunile nu sunt exact sinonime, o discuie detaliat despre acest subiect este nc activ n literatura de specialitate existent. Cu toate acestea, fiind de acord cu Castronova [14], vom presupune c lumea virtual i Metaverse-ul poate fi considerat la fel. O lume virtual este o simulare a unui spaiu, o reprezentare n trei dimensiuni a elementelor geografice, a oraelor sau o simulare digital a mprejurimilor reale. Second Life, de exemplu, este un mediu 3D care permite interaciuni ntre utilizatori, printr-o reprezentare, care este denumit Avatar. Principalele caracteristici ale lumilor virtuale sunt simplitatea utilizrii, facilitile lor de colaborare sau atractivitatea caracteristicilor 3D care ofer o senzaie nou i foarte captivant n utilizare. Toate trsturile menionate au facut din lumile virtuale un scenariu interesant pentru a testa medii inovatoare de nvmnt sau de a aplica noi tehnici de data mining. n plus, participanii la o lume virtual de succes au un profund sentiment de prezen n aceast lume. Un Metaverse este un concept mult mai complex. n ultimii ani, termenul a evoluat dup viziunea lui Stephenson n 1992 a unei lumi virtuale 3D immersive, n care sunt incluse aspecte ale lumii fizice, cum ar fi obiecte, actori, interfee i reele care construiesc i interacioneaz cu mediile virtuale. Din 2007 pn n 2008, Acceleration Studies Foundation (ASF) o fundaie non-profit cu sediul n SUA i cu un comitet de conducere internaional i partenerii au explorat viitorul Integrare sistem educaional online cu spaiu virtual 3D MMO
9
virtualului i al graficii 3D n World Wide Web ntr-un proiect public pilot, primul de acest gen, intitulat The Metaverse Roadmap (MVR) [15].
Fig. 1. The Metaverse Roadmap
Mesajul cel mai important ce reiese din aceast imagine este de patru scenarii care pun accentul pe diferite funcii, tipuri sau seturi de tehnologii metaverse: Augmented Reality (Realitate mbuntit). Tehnologiile metaverse mbuntesc lumea fizic extern pentru individ, prin utilizarea de sisteme de localizare contiente i interfeele care proceseaz i stratific informaii legate, suprapunnd aceste lucruri peste percepia noastr de zi cu zi a lumii. Lifelog (Jurnal de via). O nregistrare i stocate digital i accesibil electronic care nregistreaz diferite aspecte ale istoricului experienelor (GPS, timp, audio, vizual, etc) unor obiecte fizice, sau ale utilizatorilor umani (un lifelog utilizator). Virtual worlds (Lumi virtuale). O versiune digital a naraiunii stabilite n "alte realiti" - acestea au existat n prima form de text, prin jocuri pre baz de text i au evoluat n mai multe moduri. Jocurile virtuale sunt orientate spre un scop, i au loc n limitele regulilor de joc. Lumi virtuale sociale ofer niveluri diferite de libertate n termeni de avatar (reprezentarea digital a unui participant), personalizare i abilitatea de a construi i / sau de a crea. Mirror World (Lume oglind). O reprezentare literal a lumii reale, n format digital. Ea ncearc s oglindeasc structuri din lumea real, cum ar fi geografia, sau piaa de capital, sub form 2D sau 3D. Sistemele GIS sunt adesea lumi 2D oglind. Google Earth este un exemplu de o lume 3D oglind. n ceea ce privete tipologia de metaversuri i lumi virtuale, spaiul 3D pentru formare profesional, din punctul de vedere al proceselor de nvare, poate fi considerat aproape de ceea ce este numit Web 2.0. Ca un exemplu, Second Life (SL), poate fi analizat din perspectiva unei "metafore de teatru", care se dezvolta [16] de la cele patru dimensiuni incluse n aceast abordare. O analiz a contribuiilor principale ale SL poate fi constituit din punctul de vedere al procesului de instruire: Cognitiv / scripturi: Procesele de formare trebuie s spioneze pentru SL pentru a ajuta pe studeni s dezvolte procese de nvare semnificative imediat i pentru a putea dezvolta aceste procese mentale ntr-un mod social. Social / actori: Avatarele ajut la definirea identitii digital a studenilor pentru a-i putea asuma un rol n lumea de SL. Profesorii trebuie s creeze, de asemenea, identitatea lor digital i s i asume rolul corespunztor n aceast lume, care reprezint mediul de instruire [17]. n Integrare sistem educaional online cu spaiu virtual 3D MMO
10
acelai fel, standarde de funcionare i modele de comportament trebuie s fie create cu scopul de a asigura succesul procesului de predare-nvare. Reea / etape: Aceleai instrumente de comunicare care le ofer SL ajut la crearea unui climat adecvat de comunicare la un moment ce va implementa diversele roluri pe care actorii (avataruri) le-au avut n timpul acestui proces de formare i, n acest mediu 3D [18]. Integrare / aciune: Procesul de nvare este de fapt un proces de comunicare care are loc ntr-un mediu social. Din acest motiv, instrumentele 2.0, inclusiv SL, au un asemenea potenial n ceea ce privete promovarea procesului de nvare. "Actele sociale care ofer identiti, sensibilizare, relaii, conexiuni i interaciuni ntre elevi sunt necesare pentru nvarea interactiv" [19]. n cele din urm, principiile reelelor sociale pentru a proiecta i dezvolta un spaiu pentru nvmntul universitar trebuie, de asemenea, s fie luate n considerare. Pe de alt parte, profesorul Edward Castronova afirm c lumile virtuale sunt medii digitale 3-dimensionale n care un numr mare de persoane interactioneaza una cu alta printr-un avatar - o reprezentare digital de sine [20]. Prin urmare, caracteristicile fondatoare ale lumi virtuale sunt [21]: Interactivitate: exist pe un calculator, dar pot fi accesate de la distan (de exemplu, de o conexiune la Internet), i n acelai timp de un numr mare de persoane, cu o comand a unei persoane care afecteaz rezultatele de comand ale altor persoane. Fizic: oamenii acceseaz programul printr-o interfa care simuleaza un mediu FirstPerson fizic pe ecranul computerului lor, mediul n general guvernat de legile naturale ale Pmntului, ce se caracterizeaz prin lipsa de resurse Persisten: programul continu s funcioneze chiar dac cineva l folosete sau nu, i aminteste locaia utilizatorilor i a lucrurilor, precum i dreptul de proprietate asupra obiectelor. 2.3 Realitate augmentat Realitatea augmentat este considerat ca o extensie de realitate virtual. Realitatea virtual (VR) este un spaiu virtual n care juctorul se afunda i depete limitele de realitate fizic. n realitatea virtual timpul, legile fizice i proprietile de material nu se mai dein, n contrast cu lumea real din acest mediu. n loc de a considera AR i VR ca i concepte exacte opuse, Milgram pretinde o realitate virtual (RV) continuum [22]. Scopul realitii augmentate este de a aduga informaii i sens la un obiect sau o locaie din domeniul real. Spre deosebire de realitatea virtual, realitatea mbuntit nu creaz o simulare a realitii. n schimb, este nevoie de un obiect real ca spaiu de fundaie i ncorporeaz tehnologii care adaug date contextuale astfel nct s aprofundeze nelegerea unei persoane despre subiect. De exemplu, prin suprapunerea de date imagistice de la un RMN pe corpul pacientului, realitatea augmentat poate ajuta un chirurg s indice o tumor, care trebuie a fi eliminat. n acest caz, tehnologia utilizat ar putea include articole de acoperit capul purtate de ctre chirurg, combinate cu o interfa de calculator care suprapune datele peste persoan ntins pe masa de operaie. n alte cazuri, realitatea augmentat s-ar putea aduga ca un comentariu audio, ca date de localizare, ca i context istoric, sau ca alte forme de coninut, care pot face o experien de utilizare a unui lucru sau a unui loc mult mai semnificativ. Realitatea mbuntit a fost pus n utilizare ntr-o serie de domenii, inclusiv imagistica medical, unde medicii pot accesa date despre pacienti; n aviaie, n cazul n care instrumentele de piloi arat datele importante despre terenul pe care l au n vizor; n nvmnt, caz n care tehnologia ofer studenilor sau tehnicienilor datele necesare despre obiecte specifice cu care lucreaz; i n muzee, n cazul n care artefactele pot fi etichetate cu informaii, cum ar fi contextul istoric al acestuia sau unde a fost descoperit. n cadrul facultilor, profesorii ncep s ofere studenilor experiene mai semnificative prin ataarea de coninut educaional unor locuri sau obiecte specifice. n mai multe discipline, munca pe teren reprezint o parte important a cursului, Integrare sistem educaional online cu spaiu virtual 3D MMO
11
iar prin completarea acestor explorri cu tehnologii mobile i cu dispozitive de colectare a datelor (inclusiv aparate foto digitale), leciile pot fi extinse dincolo de munca efectiv pe teren. n unele cazuri, tehnologii de realitate mbuntit au fost integrate n jocuri educative. n mediul Environmental Detectives de la MIT, de exemplu, elevii nva despre tiinele mediului i a ecosistemelor prin gsirea de indicii i rezolvarea unui mister n campusul MIT folosind PDA-uri dotate cu dispozitive GPS. O gam larg de tehnologii pot fi utilizate pentru realitatea augmentat. Multe proiecte de realitate mbuntit utilizeaz obiecte de acoperit capul sau un dispozitiv similar care proiecteaz date n raza de vedere a utilizatorului, care corespunde cu un obiect real sau un spaiu pe care utilizatorul l observ. n cazul unei curs de tehnic de ntreinere a PC-ul, de exemplu, realitatea mbuntit ar putea suprapune o diagram schematic pe interiorul unui calculator, care s permit elevilor s identifice diversele componente i s poat accesa specificaiile tehnice ale acestora. PDA-urile sau alte dispozitive portabile pot folosi date GPS pentru a oferi utilizatorilor un context, inclusiv audio-vizual, sau n mod text, despre obiecte sau locuri reale. Realitatea augmentat nu este doar un fiier text sau multimedia ajuttor, ci o tehnologie conceput pentru a vedea un obiect sau o locaie adevrat i s furnizeze utilizatorului informaii adecvate la momentul potrivit. Augmented Reality este conceput pentru a estompa linia dintre realitatea cu care se confrunt utilizatorul i beneficiile oferite de tehnologie. Dispozitivele de calcul, mai ales cele fr fir, devin tot mai puternice i tot mai rspndite. n acelai timp, costurile pentru aceste dispozitive sunt n scdere. Cu o tehnologie hardware att cu fir ct i fr fir care se apropie din ce n mai mult de ubiquitous, apar noi oportuniti de a utiliza tehnologia pentru a mbogi experiena persoanelor fizice despre obiecte i locuri. Deoarece toate domeniile de cercetare academic beneficiaz de fond i de context, realitatea augmentat are posibilitatea de consolidare a educaiei n curriculum. Prin expunerea elevilor la un model de nvare bazat pe experien, explorativ i autentic, la nceputul carierei lor de nvmnt superior, realitatea augmentat are potentialul de a schimba modul de nvare a studenilor de la a fi beneficiarii pur i simplu de coninut, la a lua un rol activ n colectarea i prelucrarea informaiilor, dobndind astfel cunotine. 2.4 Realitate mixat Realitatea mixat (MR) (care cuprinde att realitatea augmentat ct i virtualitate augmentat) se refer la fuziunea de lumi reale i virtuale pentru a produce noi medii i vizualizri n care obiectele fizice i digitale co-exist i interacioneaz n timp real. Un amestec de realitate, realitate augmentat, virtualitate augmentat i realitate virtual. n 1994 Paul Milgram i Fumio Kishino au definit realitatea mixt ca "...anywhere between the extrema of the virtuality continuum" [23] (VC), unde continuumul virtual se ntinde de la real complet pn la un mediu complet virtual cu o realitate augmentat i o virtualitate augmentat variind ntre aceste extreme. "The conventionally held view of a Virtual Reality (VR) environment is one in which the participant-observer is totally immersed in, and able to interact with, a completely synthetic world. Such a world may mimic the properties of some real-world environments, either existing or fictional; however, it can also exceed the bounds of physical reality by creating a world in which the physical laws ordinarily governing space, time, mechanics, material properties, etc. no longer hold. What may be overlooked in this view, however, is that the VR label is also frequently used in association with a variety of other environments, to which total immersion and complete synthesis do not necessarily pertain, but which fall somewhere along a virtuality continuum. In this paper we focus on a particular subclass of VR related technologies that involve the merging of real and virtual worlds, which we refer to generically as Mixed Reality (MR)." [24] Integrare sistem educaional online cu spaiu virtual 3D MMO
12
Fig. 2. Realitate mixat 2.5 MMO. Acronimul MMO vine de la Massive Multiplayer Online. Luate separat, conceptul trebuie s acopere toate cele trei elemente: Massive - Constituit de utilizatori din toat lumea n cifre variind de la zeci la milioane de autentificri n acelai timp la un moment dat. Multiplayer - Juctorii dein personaje care interacioneaz cu alte charactere ntr-o lume virtual. MMO aduce mpreun mii de utilizatori diferii care i asum personaliti digitale sau roluri Online - n esen, necesit o conexiune la internet / band larg pentru a permite prezena live. Astfel, un MMO presupune existena unui mediu virtual imens, guvernat de un set de reguli, n care un numr foarte mare de utilizatori pot socializa i interaciona n timp real utiliznd avatare. Elementele tehnice din spatele acestui concept cuprind o arhitecur client-server, cu servere distribuite, cu elemente de redare grafic i cu o baz de date care stocheaz informaiile necesare. Astfel, tehnologia destul de complex necesar susinerii unui astfel de server a restricionat pn acum aceast industrie la piaa jocurilor pe calculator, conceptul fiind un state of the art n acest domeniu. Un MMO trebuie s fie scalabil, s ofere un univers persistent care s funcioneze indiferent dac particip cineva la el sau nu, cu o conectivitate rapid i sigur, totul petrecndu-se n timp real. Nu n ultimul rnd, conceptul de MMO presupune ideea de socializare i de cooperare, acest lucru fiind punctul de plecare pentru implementarea de soluii de eLearning n acest domeniu n continu dezvoltare. Astfel, procesul de nvare se poate stimula prin ceea ce ofer lumile virtuale i anume imersivitate, interactivitate i un mediu tridimensional dinamic. Practic, conceptul de MMO vine ca o soluie tehnic pentru implementarea unui ciberspaiu, care s asigure o lume virtual global la care se pot conecta milioane de utilizatori.
Integrare sistem educaional online cu spaiu virtual 3D MMO
13
2.6 SecondLife Second Life este o lume virtual online, dezvoltat de Linden Lab. Aceasta a fost lansat pe 23 iunie, 2003. Un numr de programe gratuite, client sau viewer, permite utilizatorilor de Second Life, denumii Rezideni, s interactioneze unii cu altii prin avatare. Rezidenii pot explora lumea (cunoscut sub numele de grid), pot s ntleasc ali rezideni, pot socializa, pot participa la activiti individuale i de grup, i de asemenea pot crea i comercializa proprieti virtuale i servicii. Percepia general este c Second Life (SL) ar fi un joc pe Internet. Nu este ns un joc organizat, cu reguli impuse i unde s fie urmrit un anumit scop. Pe situl web oficial, Second Life este descris ca fiind o lume virtual imaginat i creat de rezidenii ei; ntr-adevr, SL este o lume diversificat, n care poi ntlni oameni din toate colurile lumii reale. Este o reea de tip social, care face parte din fenomenul din Internet numit Web 2.0. Este o lume, o societate virtual. Integrat n software este i un instrument de modelare tridimensionala bazat pe forme geometrice simple, care permite rezidenilor s construiasc obiecte virtuale. Exist, de asemenea, un limbaj de scripting, Linden Scripting Language (LSL), care poate fi folosit pentru a adauga interactivitate la obiecte. Dei primitivele sculptate (sculpties), mesh-ruile, texturile pentru haine sau alte obiecte, precum i animaii i gesturi pot fi create folosind software-ul extern i importate, toate aceste opiuni necesit competene extinse de programare care fac Second Life o aplicaie complex, cel mai bine experimentat de oameni cu cunotine de calculator peste-medie. Termenii de utilizare Second Life prevd c utilizatorii pstreaz drepturile de autor pentru orice coninut pe care l creeaz, iar serverul i clientul ofer cteva funcii simple pentru a gestiona aceste drepturi digitale. [25] 2.7 Moodle Moodle este o platform popular de eLearning distribuit gratuit n regim Open Source. Acronimul MOODLE desemneaz titlul de Modular Object-Oriented Dynamic Learning Environment, iar verbul i substantivul moodle se refer la o aciune plcut, antrenant i agreabil. Moodle este dezvoltat n PHP, ceea ce ofer o uurin n configurarea i adaptarea platformei la cerinele dezvoltatorului. De asemenea, acest lucru asigur o portabilitate mare, singurele cerine i dependine fiind existena unui server web care ruleaz PHP i a unei baze de date compatibil. Recomandat este folosirea unui server web Apache i MySQL ca sistem de gestiune a bazelor de date. Bineneles, Moodle poate fi instalat cu uurin i pe o platform de web hosting ntruct majoritatea ndeplinesc chiar i pentru un plan minim toate cerinele necesare. Platforma Moodle furnizeaz o serie de instrumente standard intuitive i foarte uor de folosit prentru a sprijini nvarea online prin descoperire, documentare i cercetare, asigurnd astfel un mediu virual care s permit interaciunea colaborativ a studenilor ca un act de instruire de sine stttor sau complementar instruirii tradiionale. Module ca teme, chat, forum, glosar, teste, resurse, chestionare, lecii i pagini wiki duc la ndeplinirea acestui scop avnd n cetru utilizatorul. Moodle se configureaz i se administreaz uor, ofer management pentru cursurile online, pentru utilizatorii nregistrai i pentru diverse mbuntiri i plugin-uri care permit adugarea de noi funcionaliti platformei. Controlul permisiunilor se face prin mprirea utilizatorilor n trei roluri sau categorii: administratori, profesori i studeni. Fiecare dispune de un modul de administrare corespunztor care prezint facilitile necesare, puse la dispoziie rolului respectiv.
Integrare sistem educaional online cu spaiu virtual 3D MMO
14
Fig. 3. Interfa Moodle
2.7 Concepte OpenSim Pentru o mai bun nelegere a capitolelor ce urmeaz este necesar definirea unor termeni i concepte des folosite i care definesc aplicaia n contextul simulatorului 3D MMO.
Entitate ( Entity ) In OpenSim , o entitate este ceva ce exist ntr-o simulare 3D. Aceasta are o poziie n lumea virtual , rotaie , vitez etc. Are responsabilitatea de a oferi un proxy pentru configuraia fizic care poate fi transmis catre physics engine. Orice entitate este obligat s implementeze toate aceste concepte , indiferent de regulile nclcate. Primitiv ( Prim ) Primitiva este o entitate foarte uzual n OpenSim . Este o form simpl generat procedural care are eficien n reprezentare serializat. Implementeaz toate conceptele unei entiti , plus conceptele specifice protocolului LLUDP. n plus , implementeaz unele concepte generice precum script container. Mesh Aceasta se refer la orice entitate ce cuprinde informaii geometrice , n locul instruciunilor procedurale de generare geometric. Integrare sistem educaional online cu spaiu virtual 3D MMO
15
n funcie de implementare , un mesh poate implementa sau nu interfee aditionale precum script container i concepte LLUDP. Avatar / Prezena scenica ( Scene presence ) Este un alt tip de entitate care reprezint un caracter. Acestea interactioneaz cu scenele i entitile lor prin generarea evenimentelor i "abonarea" la cele generate de scen. Datorit numrului ridicat de evenimente prezente n cadrul unei scene, acestea sunt divizate n subseturi , care pot fi implementate la alegere de ctre prezena scenica. Agent Este reprezentarea intern a unui client care se conecteaz la simulare prin intermediul reelei. Acesta poate fi : un ultilizator conectat prin intermediul unui viewer un motor de cutare care dorete achiziia unor date un proxy care controleaz mai multe conexiuni un motor extern care transmite date ctre simulare i primete date de la aceasta Agenii sunt identificai prin intermediul protocolului de comunicaie pe care l implementeaz. Client Identificat prin orice program care se conecteaz la un server OpenSim prin intermediul unei reele. Utilizator Utilizatorul este o persoan care se conecteaz la un server OpenSim prin intermediul unui program client . Opional , aceasta poate avea un cont i suport de persisten pentru datele sale. Viewer Este o aplicaie folosit pentru a vizualiza starea unei simulri. Serviciu ( Service ) Este un sistem ce furnizeaz date ctre unul sau mai multe simulatoare. Ca exemple ar fi serviciile de date media (Asset Services), care pun la dispoziie date pentru obiecte cum ar fi texturi i scripturi, i serviciile de inventar (Inventory Services), care asigur organizarea inventarului pentru un utilizator. Sesiune ( Session ) Aceasta este denumirea fiecrei conexiuni ntre un viewer i o regiune, indiferent dac avatarul este unul principal sau secundar. Date media ( asset ) Acestea pot include texturi, sunete, scripturi sau notie ce pot fi transferate la ceilali utilizatori. Rez ( verb ) Reprezint aciunea de a instania un obiect n simulare, fie direct din primitive preexistente, fie dintr-un obiect existent stocat n inventarul utilizatorului. Regiune Are o pozitie (x,y) n grid si un identificator de regiune (region-handle) calculat n functie de pozitie. Poate fi definit ca un capt (IP Endpoint) al conexiunii client pe care o stabileste un viewer cu regiunea respectiv. Integrare sistem educaional online cu spaiu virtual 3D MMO
16
ID-ul unic al unei regiuni este UUID (Universally unique identifier), iar dac regiunea i schimb poziia, identificatorul poziional (region-handle) va fi recalculat, pentru c el identific unic poziia n grid. Conine un numr de subcomponente: Scen Circuitele Client/Viewer Scen Este o parte dintr-o regiune, momentan ntr-o relaie unu la unu. Conine toate obiectele 3D, ce pot fi prezene scenice (ScenePresences) sau grupuri de obiecte (SceneObjectGroups). O prezen scenic poate fi reprezentat de un avatar, daca este de tip root. Grupurile de obiecte (clasa SceneObjectGroups) constau dintr-un numar de pri de obiecte, reprezentate de clasa SceneObjectParts. Simulator Un program care administreaz mai multe regiuni.
Integrare sistem educaional online cu spaiu virtual 3D MMO
17
3. Prezentarea aplicaiei OpenSimulator (OpenSim, http://www.opensimulator.org) este un framework i o implementare de spaiu virtual 3D MMO. Acesta se constituie pe cadru foarte bine definit de entiti, funcii i servicii care ofer baza petru un astfel de simulator. Acest simulator este referit ca o regiune, i conine cea mai mare parte a arhitecturii lumii virtuale. Simulatoarele de regiuni interacioneaz cu alte simulatoare i cu clieni prin intermediul entitilor i serviciilor de comunicaie. mpreun, aceste servicii sunt cunoscute ca servicii grid, i includ un serviciu de utilizator, serviciul de grid, serviciul de active, serviciul de inventar i serviciul de mesagerie. O instan de OpenSim const ntr-un strat de regiuni, stratul de grid i un strat de aplicaie. Acest strat de aplicaie, pe lng cel de regiuni i de grid, ar putea fi gndit ca i coninnd unul sau mai muli clieni. 3.1 Arhitectur (server) Un server OpenSimulator const din regiuni (rulate pe simulatoare de regiune) i servicii de date (cum ar fi de utilizator, active i managementul inventarului). Serverul poate rula n mai multe configuraii: Single server (standalone) n aceast configuratie, tipurile de baze de date persistente suportate sunt SQLite si MySQL. O baz de date de tip MSSQL exist i ar trebui s funcioneze, dar nu este oficial suportat. Grid (multi-server) n modul grid, persistena este oficial suportat doar pentru o baz de date MySQL, iar n mod neoficial se poate realiza i pentru una de tip MSSQL. HyperGrid aceasta este o arhitectur cu caracter ortogonal (independent fa de celelalte dou), care permite utilizatorilor s viziteze alte medii OpenSim complet separate, n timp ce i menin aspectul, identitatea i inventarul.
Un sistem care ruleaz n modul standalone ruleaz att simulatorul de regiune ct i toate serviciile de date ntr-un singur proces, atunci cnd ruleaz OpenSim.exe.
Fig. 4. Arhitectur Standalone Integrare sistem educaional online cu spaiu virtual 3D MMO
18
n modul de Grid serviciile de date nu sunt parte component a procesului ce se ocup cu regiunile. n schimb, aceastea din urm ruleaz ntr-un executabil separat Robust.exe. Procesul ROBUST poate rula toate serviciile sau aceastea se pot distribui ntre mai multe instane ale procesului, fie ele si pe staii diferite. n acest mod (Grid) procesul de OpenSim.exe are doar rolul unui server de regiuni, ce gestioneaz una sau mai multe regiuni proprii. Astfel, se pot rula mai multe astfel de procese pe maini diferite pentru a evita suprancarcarea unei staii si a asigura performana.
Fig. 5. Arhitectur Grid
Rularea n modul reea (Grid) este mult mai complicat dect n modul autonom (Standalone). Este nevoie de o nelegere a unor concepte ca UUID, X, Y, locaie, server handshake, domenii, proprietari i altele. Acestea necesit mai mult atenie i rbdare pentru a configura.
Serviciile de care se ocup OpenSim se mpart n mai multe servere cu anumite responsabiliti:
UserServer Responsabil cu autentificarea utilizatorului n grid Creeaz un identificator de sesiune pentru client care poate fi folosit pentru autentificarea cererilor ctre alte servere din acelai grid i asociaz acest identificator cu un UUID (poate implica autentificare criptografic, autentificare OpenID sau metoda curent cu autentificare prin Resident Name/Password). GridServer Responsabil cu autentificarea regiunilor. Deoarece gridul este bidimensional i fiecare regiune are coordonatele X,Y proprii, este necesar s fie asigurat c, n particular, orice coordonat X,Y este asignat corect. Integrare sistem educaional online cu spaiu virtual 3D MMO
19
Implementarea curent a se bazeaz pe o autentificare mutual (fiecare parte se asigur de identitatea celeilalte) cu serverele de regiuni, bazat pe o schem dual, secret i partajat ntre cele dou entiti (denumit incoming password i outgoing password). Fiecare regiune are un UUID asociat. AssetServer Reprezint, n special, o baz de date WFRM (write few, read many). O resurs stocat n baza de date, are asociat un UUID ca etichet i rmne permanent stocat acolo. Pe viitor, dezvoltatorii OpenSim vor s detecteze resursele nefolosite i s le elimine din baza de date. Sunete, texturi, imagini, notie, scripturi, obiecte serializate din inventar pot fi adugate, fr a mai fi modificate vreodat. Dac este necesar vreo modificare la una din resurse, se uploadeaz una nou, cu schimbrile dorite, asociindu-se un nou UUID, resursa veche rmnnd nemodificat. InventoryServer Folosete o baz de date adaptat pentru multe scrieri i multe citiri, pentru c stocheaz mult mai multe date. Baza de date este conceput ca directoare de resurse organizate dup UUID- uri. Astfel utilizatorul are un UUID, folosit pentru UUID-ul folderului principal InventoryRoot, iar acest folder are o list de UUID-uri ctre care face legtura, iar fiecare folder are la rndul lui alte foldere cu liste de UUID-uri, iar cele care nu mai alte foldere, fac legtur direct la UUID-ul, tipul i numele descriptiv al unei resurse. Reine informaiile despre permisiunile asupra elementelor din inventar. MessagingServer A aprut mai trziu i nu e la fel de esenial. Pentru ca utilizatorii s poat comunica ntre ei fr a apela la scrierea pe cer a mesajelor, acest server este necesar. ine evidena celor care pot asculta i atepta mesaje, dar i a mesajelor pe distan lung trimise de la un utilizator la altul (analog unui SMS) i pstreaz mesajele necitite pn cnd sunt citite. RegionServer Se ocup de obiectele din scen, de observatorii conectai i trimite actualizri ctre acetia. Face distincii pe baza UUID-urilor. n modul Standalone, el i furnizeaz propriile servicii UGAIM i totul este rulat ntr-un singur proces. n modul Grid, serviciile ruleaz separat ca procese i fiecare poate fi rulat pe maini diferite. Modules Se ncarc dinamic ca dll-uri ataate severului. Sunt apelate n bucla principal avnd acces la majoritatea resurselor i metodelor din server. Utilizate pentru interaciuni ntre avatare, obiecte, calcule, IA, scripturi, interaciuni complexe ntre obiecte i n general orice fel de plug-in ce folosete resursele serverului de OpenSim. Integrare sistem educaional online cu spaiu virtual 3D MMO
20
Fig. 6. Schema serverului de OpenSim
n detaliu, OpenSim ofer o arhitectur stratificat pe componente, care asigur separarea funcionalitilor la nivel de simulator de cele de interoperabilitate. ncapsularea i abstractizarea sunt folosite pentru a susine modularitatea i extensibilitatea. Cele mai multe servicii de baz i entiti sunt mai nti definite ca interfee de baz sau clase abstracte. Implementrile motenesc i mbuntesc aceti membri nu numai pentru a oferi funcionalitile de baz, ci i pentru a dezvolta capabiliti noi. Totui, codul este destul de stufos, ntruct sistemul din spatele OpenSim a fost definit iterativ. Anumit funcii de baz sunt bine definite, dar interoperabilitatea subsistemului continu s fie dezvoltat. Simulatorul i membrii acestuia sunt referii ca i regiune, n timp ce o colecie de regiuni i funcionalitile aferente sunt considerate un grid. Setul de o regiune, un grid i logica combinat de suport constituie o instan a aplicaiei. OpenSim a fost dezvoltat pe cadru Mono pentru a oferi portabilitate ntre mediile int de folosire, i de a valorifica facilitile oferite de .NET. Framework-ul Mono a fost dezvoltat de Mono Project ca o alternativ open-source la soluia Microsoft .NET. Mono suport majoritatea sistemelor de operare populare precum i diverse arhitecturi hardware, i furnizeaz majoritatea funciilor i facilitilor oferite de framework-ul .NET. Integrare sistem educaional online cu spaiu virtual 3D MMO
21
n termeni de design, OpenSim a fost creat pentru a oferi un simulator open-source compatibil cu clienii de Second Life. La baz, OpenSim extinde biblioteca LibOpenMeteverse (fosta bibliotec libsecondlife), o bibliotec open-source scris n .NET care ofer acces la Second Life. LibOpenMetaverse (http://www.openmetaverse.org) conine funcionalitile att pentru server ct i pentru client, tipuri de date generale i diferite clase ajuttoare. OpenSim se folosete de abstractizare pentru a izola funcionalitatea i pentru a asigura o interfa comun. Framework-ul (OpenSim.Framework) prezint multe interfee pentru serviciile ateptate. n arhitectura .NET, interfeele pot fi puse n aplicare de ctre un furnizor, nregistrat dinamic, i utilizate de funciile de client. Aceste interfee ncapsuleaz plugin-uri care ofer funcionalitate att de baz ct i definit de utilizator. Aceast funcionalitate este furnizat de Mono.Addins. Pentru a defini o funcionalitate nou, toate clasele definite de utilizator sunt mai nti abstractizate ntr-o pereche nterfa/implementare, i apoi se adaug metadatele de asamblare (manifest) ntr-un format XML. Modulele sunt ncrcate parsnd configuraia rezultat i apoi ncarcnd dinamic codul de asamblare n memorie. Exist i alte metode de abstractizare n cadrul proiectului OpenSim. Acestea sunt pentru disponibilitate cuprinztoare, o ncercare recent se face pentru a ngloba eficient funcionaliti prin interfee consolidate. n termeni de manipulare a datelor, multe interaciuni ntre clase abstractizeaz parametrii pentru a reduce overhead-ul i pentru a trata cazuri necunoscute, lsnd mplementarea la latitudinea consumatorului final. n acelai timp, modularitatea joac un rol important n proiectarea OpenSim. Fiecare strat de proiectare OpenSim include module ce implementeaz funcionaliti. Aceste module sunt de asemenea menionate ca assemblies sau plugin-uri, n funcie de context. Modularitatea este implementat i susinut de ctre fiierele de configurare. La nivel de execuie, OpenSim folosete fiiere de configurare pentru a defini parametrii de sistem necesari pentru pornirea i funcionarea instanei. Fiierul central este OpenSim.ini, situat n directorul /bin. Acest fiier conine cea mai mare parte din constrngerile de configurare a sistemului, include parametrii de grid, parametri de module, precum i parametrii fizic, printre altele. Acest fiier este sprijinit de un fiier de configurare a regiunilor, de fiierul de configurare a serviciilor de reea (reea local sau grid), i fiierele de configurare a cache-ului. Regiunea OpenSim este, n esen, un simulator de fizic, un motor de script-uri locale, i un manager de client. La baza serverului de regiune este o scen, care este o clasa de esenial pentru simulare. n acest moment, fiecare regiune are exact o scen. Scena motenete clasa abstract SceneBase, care extinde interfaa Iscene. Clasa SceneBase conine funcionaliti abstracte pentru a manipula module de regiune. Aceasta conine, de asemenea, membrii de baz pentru gestionarea clientului, managementul evenimentelor, permisiuni, informaii despre regiuni (nume etc), i module de regiune. Scena augmenteaz clasa SceneBase cu membri i functionalitate pentru a crea un simulator atomic. Cmpurile includ membrii de fizic bazat pe grafuri, manevrarea vecinilor, constrngerile logice, parametrii sistemului, un manager de stocare, un sistem de ncrcare a modulelor, un modul de gestionare a autentificrilor, un manager de comunicare, o gril de servicii de scen, un serviciu de active, un serviciu de inventar, un modul de gestionare i comunicare XML- RPC, un modul de serializarea a strilor, interregion module de comunicaii inter-regionale, un modul de dialog, un modul de teleportare, un modul de capabiliti, precum i argumente configurare a scenei fizice i trimiteri la unele dintre directoarele i membrii de baz a SceneBase. Clasa SceneGraph (OpenSim.Region.Framework.SceneGraph) furnizeaz clasei SceneBase un obiect elementar bazat pe grafuri pentru manipularea componentelor matematice. Clasa SceneGraph ncapsuleaza utilitile i entitile de baz la nivel de simulator, cum ar fi scen fizica, actorii scenei (ScenePresence), obiectele de scen (SceneObjectGroup), o caset de ncadrare QuadTree. Funcionalitatea oferit de aceast clas permite accesul Scenei la clasele care stau la Integrare sistem educaional online cu spaiu virtual 3D MMO
22
baza claselor de fizic ntr-un mod uniform, cu ncuietori de sincronizare pentru a asigura integritatea. Una dintre componentele de baz ale scenei este EventManager (OpenSim.Region.Framework.Scenes.EventManager). Acest manager de eveniment conine evenimente care sunt manipulate de scen, n calitate de editor. Module adaug funcionalitate la evenimente prin abonarea pe evenimentului int. Pentru abonare, modulele adauga funcia lor proprie ca un handler pentru a evenimentul ncapsulat delegat. Acest model permite multicasting la orice numr de handlere. Evenimentele definite n EventManager i sunt activate de ctre diverse componente ale sistemului de scen. Evenimentele de baz sunt incluse pentru declanatoare importante, inclusiv iterai cadru individuale, manipularea de obiecte, schimbarea strii unui script, precum i alte evenimente critice. Clasa ScenePresence este obiectul rdcin ce reprezint un avatar in scena. Acesta extinde clasa EntityBase, care definete un obiect care are un nume, informaiile fizice (poziia, viteza, rotaia), un UUID, precum i o referin la scen, mpreun cu suportul pentru funcionalitate abstract. Clasa ScenePresence dezvolt aceast baz, cu un vizualizator de scena, controale scriptate, o textur, flag-uri booleene, constrngeri logice, extinderea informaiilor fizice, informaii despre viewer, referine legate de SceneObjectGroups, i suport de funcionalitate. Aceast clas are, de asemenea, o trimitere la interfaa client, permind interaciunea cu sfritul local al circuitului clientului. Clasa SceneObjectGroup este o alt entitate ce implementeaz clasa EntityBase, i ofer unitatea atomic pentru un obiect n lumea virtual. La baza clasei este un dicionar de SceneObjectParts, care reprezint primitivele individuale (prims) ale obiectului virtual. n plus fa de acest dicionar, clasa conine o parte/o primitiv rdcin, la care se face referire pentru a manipula obiectul. Funcionalitatea este furnizat pentru a manipula fiecare component a obiectului i pentru a menine integritatea. Pentru referin, SceneObjectPart este n acelai spaiu de nume (OpenSim.Region.Framework.Scenes), extinde IscriptHost, i ofer clasa de baz pentru un obiect de lume virtual. La nivel de regiune, module de regiune definesc entiti, manipuleaz colecii, ofer puncte de extindere, i asigur comunicaia, printre alte multe funcii. Aplicaia obinuit de ncrcare a modulelor de regiuni ncarc asamblrile dintr-un director de baz i include toate clasele ce implementeaz IregionModule, interfa obinuit pentru modulele de regiuni. Modulele de regiune sunt transmise la scena principal a simulatorului. Prin manipularea aceastei referin, module pot extinde funcionalitate. Stratul de grid al OpenSim este format din mai multe servere care ofer funcionalitate interregional. Aceste servere sunt denumite n continuare "UGAIM" de baz, "UGAIM" provenind ca prescurtare de la Utilizator, Grid, Active, Inventar i Mesaje. Definiia funcional pentru un grid OpenSim specific o singur instan din fiecare dintre serverele UGAIM, servind unul sau mai multe simulatoare de regiune. O instan de server grid poate deservi mai multe griduri (de exemplu, pentru a asigura autentificarea obinuit a utilizatorului), dar numai un serviciu este implementat n orice regiune dat. Iniial, n dezvoltarea OpenSim, serviciile de grid au fost definite de clase unice adaptate la proiectarea componentei necesare. OpenSim a fost conceput pentru a ncepe ntr-unul din cele dou moduri, independent(standalone)/sandbox i n grid. n mod autonom(standalone), serviciile de UGAIM vor rula, alturi de regiuni, ntr-un singur executabil OpenSim.exe. n modul de grid, serviciile sunt ncapsulate n servere independente, care ruleaz n propriul lor proces. Ulterior, pachetul OpenSim a fost mbuntit cu interoperabilitatea reelei externe. Acest proiect este menionat ca extensie HyperGrid, i a devenit parte a trunchiului OpenSim. Extensia de Hypergrid este prefixat (HG), i are un spaiu de nume propriu, HyperGrid. Aceasta extinde framework-ul pentru a suporta profile strine, comunicaii Integrare sistem educaional online cu spaiu virtual 3D MMO
23
(OpenSim.Region.Communications.HyperGrid), manipularea activelor, extensii de scen (OpenSim.Region.Framework.Scenes.Hypergrid), i module diferite regiune (OpenSim.Region.CoreModules.HyperGrid). Extensiile de comunicaii adaug funcionalitate de reea la simulatoare (chiar i n mod autonom, fcnd astfel gridurile standalone accesibile). Extensia este o prelungire similar a hyperlink-urillor de pe o pagin web, i se ocup de logica de control de rutare a cererilor i a funciilor ntre un context local i cel de la distan. Serverele de grid includ un server de HTTP de baz, care permite manipularea de cereri i rspunsuri. Acest server (OpenSim.Framework.Servers.HttpServer.BaseHttpServer) manipuleaz handler-ele asociate cu diferite protocoale de comunicaii pe care serverul le recunoate. Argumentul de baz pentru un nou BaseHttpServer este portul pe care serverul va funciona. BaseHTTPServer este prima dat ncapsulat n BaseOpenSimServer (OpenSim.Framework.Servers), care adaug, de asemenea, o consola, un thread, i ali membri suplimentari. n modul de grid tradiional, serverele sunt pornite independent, n funcie de poziia lor n acronimul UGAIM (Utilizator, apoi Grid, apoi a Activelor, apoi Inventar, apoi de Mesaje). n plus, serverul de utilizatori, server de grid, i serverele de mesagerie motenesc interfaa IGridServiceCore. Serviciul de utilizator, OpenSim.Grid.UserServer.OpenUser_Main, ofer mecanisme de autentificare a utilizatorilor. n plus fa de nivelul de interaciune consola-comand, serviciile de utilizator ofer un centru comun pentru servicii-utilizator specifice, cum ar fi autentificare, cont / management de utilizator, datele de utilizator / cererilor de metadate, i alte funcii centrate pe utilizator. Aceste module sunt implementate separat pentru a spori modularitatea, i de a folosi ncrcare dinamic (interfaa de nregistrare), pentru a interaciona cu sistemul. Ar trebui remarcat faptul c aceast versiune a serverului de utilizator nu utilizeaza sistemul de Mono.Addins, bazat pe plugin-uri pentru a extinde funcionalitatea. Funcionalitatea curent extinde o clas Main.cs n spaiul de nume. Aceast clas principal, OpenUser_Name, conine membri pentru un logger, o configuraie, un utilizator DB serviciu, un modul de aspect pentru avatar, un modul de prieteni pentru utilizator, un serviciu de autentificare, conectori pentru serviciul de mesaje (pentru deplasarea la serviciul de mesaje n serviciu de utilizator), un serviciu de informatii grid, un modul de comand pentru consol, un modul de creare de avatar, i un serviciu OpenID. Ca i n alte servere OpenSim, serverul pornete ca un server de baz HTTP, la care mai apoi este ataat o consol. Serverul de reea ofer n prezent funcionalitate interregional pentru simulator. Clasa principal este OpenSim.Grid.UserServer.GridServerBase, i pentru funcionarea standalone acest lucru este nfurat ntr-un fiier de program, cu o clas Main. Scopul principal al serverului grid este de a oferi servicii obnuite de manipulare n regiune, inclusiv cererile de informaii, conectare / deconectare, precum i mesajele interregionale. Ca i alte servicii grid de baz, funcionalitatea este implementat ntr-un format modular, cu module pentru Server Grid de baz (GridServerPlugin), Grid DB Service (stocarea informaiilor de regiune), servicii de mesagerie, plugin-uri de manipulare i de protocol (GridRestModule i GridXmlRpcModule). GridServerPlugin poate fi gndit ca modulul principal de servicii grid, i conine referine la restul serviciilor menionate anterior, la configurare, la consol,i la servicii grid de baz. Serverul de active ofer servicii tradiionale de manipulare de active impuse de OpenSim. Clasa principal, OpenAsset_Main este situat n OpenSim.Grid.AssetServer. La baza serverului de active sunt metodele pentru a obine i a pstra o activ (GetAssetData i respectiv StoreAsset). Activele din aceast configurare sunt invariabile, aa c sunt permanent stocate pe server (funcia de tergere nu este definit). Plugin-ul de baz cu serverul este furnizorul de depozitare (unul care implementeaz interfaa IAssetDataPlugin). Acest furnizor de stocare este setat n configuraia OpenSim.ini principal. Membrii suplimentari includ AssetLoaderFileSystem (definit n OpenSim.Framework.AssetLoader.Filesystem i implementeaz interfaa IassetLoader), folosit Integrare sistem educaional online cu spaiu virtual 3D MMO
24
pentru ncrcare de active implicite n format xml de la o locaie n fiier (la pornire). Alte completri includ tratarea stream-urilor pentru metodele de get i post (definite n OpenSim.Framework.Servers.*AssetServerHandlers.). Avnd n vedere natura specific a acestui server de active, plugin-urile nu sunt uor de integrat n acesta (cu nici un mecanism de includere clar). Serverul inventar ofer servicii de inventar la solicitarea clienilor. Clasa de baz n aceast versiune este OpenInventory_Main, aflat n OpenSim.Grid.InventoryServer. Aceast clas principal conine configurarea serviciului, precum i configurarea consolei, referine principale, i configurarea serverului HTTP. Codul principal este n extensiea GridInventoryService. Serviciul de inventar, n esen, este configuraie ierarhic de regsire ntr-un dosar. Cererile includ obinerea inventarul unui utilizator, actualizarea / mutarea / curarea / tergerea de foldere i de elemente stocate. nainte de fiecare cerere, serviciul compar autentificarea cu cache-ul sesiunii locale, pentru a verifica permisiunile (dac nu exist nimic n cache, trimite cererea la serverul de utilizator, i adaug dac este gsit). Serverul de mesaje se ocup de comunicarea ntre utilizatori, att inworld ct i pe plan extern. Serverul de mesaje conine o colecie de module pentru a stoca informaii de utilizator, precum i mesaje de rut i de comunicare a prilor relevante. Exist, de asemenea, module de protocoale populare de chat, inclusiv IRC. Serverul de mesaje este n proces de migrare spre interiorul altor servere de grid de baz. Ca atare, serverul de mesaje nu este critic pentru rularea OpenSim. OpenSim este considerat un produs n stadiu alfa, adic exist o dezvoltare continu n ntreaga baz de cod, cu nici o versiune stabil oficial. Ca atare, aceste definiii sunt n continu dezvoltare i mbuntire. Exist o baz de colaboratori pe diferite componente i bug-uri, i mult mai multe informaii pot fi gsite direct pe site-ul platformei la http://www.opensimulator.org. 3.2 Funcii principale (module) OpenSimulator ofer o suit de aplicaii de baz ce asigur un cadru pentru o aplicaie 3D MMO. Astfel, platforma Suport medii online 3D, multi-user ce integreaz de la unul pn la mii de simulatoare. Suport spaii virtuale 3D de dimeniuni variabile rulnd ntr-o singur instan. Suport o multitudine de clieni i protocoale se poate accesa aceeai lume n acelai timp folosind protocoale diferite. Suport simulare fizic i coliziuni n timp real, inclusiv ODE. Suport clieni care creez coninut 3D n timp real. Suport scriptare inworld folosind un numr de limbaje diferite, inclusiv LSL/OSSL, C# i VB.NET. Asigur capacitatea nelimitat de a personaliza aplicaiile virtuale prin folosirea de module dinamic ncrcate.
Cteva exemple mai importante de capabiliti oferite: Primitive: Creare / Modificare / Mutare / tergere primitive Inventar persistent al primitive Grupuri de obiecte Tipuri de baz de active Plasare de coninut media pe o primitiv (browser web, streaming etc) Integrare sistem educaional online cu spaiu virtual 3D MMO
25
Texturi dinamice Mesh (n variant beta) Utilizatori: Chat Instant Messaging Prieteni Grupuri Profile Lume: Sunet Minimap WorldMap Regiuni nvecinate Management de parcel Setri de regiune Teleportare Altele: IRC Permisiuni Statistici Captare voce (microfon) Interfee web Modul de cutare Server: Consol local Consol la distan (remote) Admin la distan (nesecurizat) Jurnal Arhitecturi: Pe un singur sever (Standalone) Pe mai multe servere (Grid) Hypergrid 3.3 Configurare Configurarea se realizeaz cu ajutorul fiierului OpenSim.ini. Acesta refer i alte configurri din directorul config-include. Informaii despre setri se gsesc detaliate i comentate chiar n fiier sau n OpenSim.ini.example. Este posibil ca fiierul s fie distribuit n mai multe pri atunci cnd se dorete rularea unor procese OpenSim n care setrile sunt n mare parte identice. Configurarea bazei de date depinde de SGBD-ul (Sistemul de Gestiune al Bazelor de Date) folosit. OpenSim suport urmtoarele sisteme: SQLite (implicit) - o baz de date mai simpl, care vine la pachet cu OpenSimulator i poate fi utilizat, fr a necesita nici o configurare suplimentar. Aceasta este n cea mai mare parte destinat unei instalri rapide i nu pentru utilizarea n producie. Aceasta este semnificativ mai lent dect MySQL i are dezevantajul c nu au fost nc pe deplin implementate cteva caracteristici (cum ar fi persistena ataamentelor). Integrare sistem educaional online cu spaiu virtual 3D MMO
26
MySQL (implementat complet cu toate caracteristicile) - Aceasta este baza de date recomandat pentru orice utilizare dincolo de experimentare sau mici aplicaii de sine stttoare. Versiunea minima de MySQL este 5.1. MSSQL (menint) - persistena pentru unele caracteristici OpenSimulator recente nu este nc implementat, dei marea majoritate a acestora sunt suportate.
Distribuiile deja compilate sunt configurate implicit pentru a rula n mod Standalone. Totui, dac se construiete aplicaia pornind de la surse vor trebui fcute cteva modificri: 1. Se intr in directorul bin al serverului 2. Se copie sau se redenumete fiierul OpenSim.ini.example n OpenSim.ini. Acest lucru asigur configurarea simulatorului 3D n sine 3. Se intr n directorul bin/config-include 4. Se copie sau se redenumete fiierul StandaloneCommon.ini.example n StandaloneCommon.ini. Acest lucru asigur configurarea serviciilor de date folosite n modul Standalone. 5. n seciunea [Architecture] a fiierului OpenSim.ini, aproape de sfritul acestuia, se decomentez linia ce conine Stanalone.ini. Pentru a decomenta o linie de cod, se terge primul simbol (;) de la nceputul liniei astfel nct configurarea s ajung Include-Architecture = "config-include/Standalone.ini" Rularea simulatorului devine apoi doar o chestiune de a lansa n execuie OpenSim.exe. Totui, este necesar ca toate dependinele s fie instalate nainte de acest lucru: Pentru Windows Este necesar .NET Framework 3.5 (Windows 7 i Windows Server 2008 au deja instalat acest lucru); versiunea 4.0 nu este suportat nc Versiunile mai vechi, 2000 sau NT nu sunt suportate, iar Windows XP trebuie s aib minim Service Pack 2 Pentru a executa n linie de comand: OpenSim.exe (x86) OpenSim.32BitLaunch.exe (x64) pentru Windows 64-bit, ODE nu poate fi compilat nc, deci pentru a putea folosi acest plugin trebuie rulat ntr-o versiune de compatibilitate Pentru Linux Este necesar Mono 2.4.3 sau mai nou (preferabil 2.6.x sau 2.10.x) Suportat i testat pe diverse distribuii: Ubuntu Debian (versiunea 5 sau mai nou) Distribuii RedHat
Dac rulm OpenSimulator pentru prima dat, vor trebui introduse mai multe configurri iniiale, la consola, care vor defini o singur regiune, un domeniu i un utilizator. Opiunile de configurare pe care le introducem vor fi scrise n fiierul bin/Regions/Regions.ini, pe care le putem ulterior modifica, n cazul n care avem nevoie pentru a face modificri. Multe dintre configurri au valori implicite specificate ntr-o parantez ptrat. n ordinea afirii acestea sunt: New region name Numele regiunii. Este obligatoriu. Region UUID Identificatorul unic pentru regiunea dumneavoastr. De obicei se va accepta valoarea implicit generat aleator n paranteze ptrate. Integrare sistem educaional online cu spaiu virtual 3D MMO
27
Region Location Aceasta este locaia regiunii n grid. n modul Standalone se poate lsa valoarea implicit (1000, 1000). Totusi, trebuie s avem grij ca atunci cnd adaugm alte regiuni ele s aib coordinate diferite (de exemplu 1000, 1001). n OpenSimulator regiunile pot fi plasate pe un grid de dimensiune 65536x65536. Internal IP address n mai toate cazurile se poate lsa valoarea implicit de 0.0.0.0 (acesta e un wildcard care permite simulatorului s asculte conexiunile de UDP a oricrei interfete de reea). Dac se vrea restricionarea conexiunilor UDP la o singur interfa de reea, se poate specifica explicit adresa IP. Adresa este folosit doar intern. Internal port Acesta este portul care este folosit pentru toate conexiunile de client. Numele induce n eroare pentru c este folosit att extern (de un viewer Second Life spre exemplu) ct i intern. Poate fi folosit orice port, dar indicat este cel implicit 9000. Fiecare regiune trebuie sa aib un port unic. External host name Valoarea implicit pentru aceast configurare este SYSTEMIP, ceea ce nseamn c va lua valoarea adresei locale de reea (LAN de exemplu 192.168.1.2). Acest lucru este util att timp ct ne conectm la server din interiorul reelei locale. Dac vrem s ne conectm de pe internet, ar trebui s setm adresa IP extern a routerului. Allow alternate ports Este o configurare care nc se experimenteaz. Trebuie lsat valoarea implicit (False) New estate name Numele domeniului n care va fi nscris regiunea Estate owner first name Numele utilizatorului ce va administra domeniul. Valoarea implicit este Test. Estate owner last name Numele utilizatorului ce va administra domeniul. Valoarea implicit este User. Password Parola pentru administratorul domeniului. Email Email pentru administrator. Se poate lsa i necompletat ntruct este optional. User ID Identificatorul unic pentru administratorul regiunii sau al domeniului. Se poate lsa valoarea implicit generat n paranteze.
Nu trebuie uitate detaliile primului utilizator introdus ntruct doar acesta va putea iniial s modifice configurrile din simulator pentru regiuni i pentru ntregul domeniu. Se pot defini i ali utilizatori folosind comenzi de consola (create user).
Conectarea la OpenSimulator se face prin intermediul clientului, la care se adaug civa parametri de rulare. Astfel, putem rula un client att din consol cu parametrul de loginuri urmat de adresa i portul serverului, ct i alternd direct shortcut-ul clientului, adugnd parametrul la seciunea Target a acestuia. De exemplu, pentru a ne conecta cu un client la un server rulnd local pe portul implicit, vom folosi parametrul -loginuri http://127.0.0.1:9000, iar pentru a ne conecta la un server care ruleaz pe internet putem folosi att adresa IP ct i un nume de domeniu, dac acesta este configurat, folosind -loginuri http://3d.pub.ro:9000.
Rularea OpenSimulator n modul de grid este mult mai complicat dect rularea ca o instan independent. n loc de a rula totul n acelai proces, serviciile de date backend (activ, inventar, etc), ruleaz n una sau mai multe procese separate, de multe ori pe o alt main. Acest lucru permite mai multe instane simulator OpenSim.exe de a utiliza aceleai activele i date de inventar. n primul rnd trebuie s configurm o instant de ROBUST. Pentru aceasta vom urma mai muli pai: Integrare sistem educaional online cu spaiu virtual 3D MMO
28
1. n directorul bin, copiem sau redenumim fiierul Robust.ini.example n Robust.ini. Acest fiier asigur configurarea pentru a putea rula toate serviciile ntr-o singur instan ROBUST. 2. Configurm ca serviciile de date s foloseasc o baz de date de tip MySQL, singurul mod suportat de rularea n grid. Aceste configurri vor fi modificate n seciunea [DatavaseService] din fiierul Robust.ini. 3. Rulm fiierul Robust.exe. Dac nu apar erori (colorate n rou) putem trece la pasul urmtor. 4. Fiecare regiune trebui s aparin unui domeniu i fiecare domeniu trebui s aib un utilizator OpenSim valid. Adugm un utilizator nou folosind comanda create user. Acesta va fi administratorul.
n pasul urmtor configurm simulatorul astfel nct s foloseasc serviciile ROBUST, deci alterm fiierul OpenSim.exe care controleaz simulatorul 3D n sine. Astfel, n seciunea [Architecture] vom proceda similar ca la modul Standalone, cu diferena c vom include configurrile pentru grid (Grid.ini). De asemenea, n fiierul bin/GridCommon.ini vom observa valori default pentru diferite servicii cum ar fi http://myassetserver.com:8003 sau http://myinventoryserver.com:8003. Acestea trebuie schimbate astfel nct s directeze ctre adresa instanei de ROBUST. Spre exemplu, dac rulm ROBUST pe o main local cu adresa IP 192.168.2.1 vom modifica AssetServerURI setnd AssetServerURI = "http://192.168.1.2:8003". Ultimul pas reprezint rularea unei instane OpenSim.exe. Dac totul a fost configurat bine, nu ar trebui s apar nici o eroare. De asemenea, ar trebui s avem confirmarea n ROBUST care ne asigur c regiunea s-a nregistrat correct la serviciul de grid. De exemplu: 21:43:45 - [GRID SERVICE]: Region ACS (176cc95e-f693-4b02-8e08-af86e2372faa) registered successfully at 256000-256000 21:43:47 - [GRID SERVICE]: region ACS has 0 neighbours
n acest moment putem s ne conectm cu un client. De menionat este c adresa i portul care trebuie setate n parametrul de loginuri trebuie s fie corespunztoare instanei de ROBUST. Dac autentificarea este cu succes, putem observa acest lucru i n instana OpenSim.exe (ntruct procesul de autentificare transmite simulatorului s atepte avatarul, comunic clientului adresa simulatorului de regiune, iar apoi clientul comunic direct cu simulatorul de regiune, adic instana de OpenSim.exe). 3.4 Interfa (client) [26] OpenSimulator poate fi utilizat pentru a simula medii virtuale similare Second Life (SL), avnd n vedere faptul c suport protocolul de comunicare SL. Ca atare, aceste lumi virtuale pot fi accesate cu un client (viewer) SL obinuit. Cu toate acestea, OpenSimulator nu este nici o clon de server Second Life, i nici nu are aceasta ca obiectiv. Dimpotriv, OpenSimulator nu are suport pentru multe din caracteristicile specifice ale jocului Second Life, n timp ce se urmresc direcii inovatoare pentru a deveni un server de baz, dar extensibil, n domeniul 3D Web. Aa cum am precizat i mai sus, OpenSimulator ofer multe module, funcii de baz, iar clienii de Second Life i implicit OpenSim, ofer o interfa intuitiv i uor de realizat pentru a avea acces la aceast suit de faciliti. Astfel, spre exemplu n clientul original de Second Life, vom avea mai multe seciuni i meniuri. Bara din partea de jos a ecranului SL ofer instrumentele cele mai frecvent utilizate, care sunt eseniale pentru noi utilizatori. Acesta este modul n care bara de unelte de jos apare pe ecran: Integrare sistem educaional online cu spaiu virtual 3D MMO
29
Fig. 7. Second Life viewer - Bara de unelete de jos
Butonul Chat este utilizat n cazul n care se dorete angajarea ntr-o conversaie text cu personaje ce se afl n apropiere. De asemenea, acesta furnizeaz i un istoric al conversaiilor. Precum folosind butonul de Chat comunicm cu alte personaje prin text, se poate comunica i prin voce, folosind un microfon si modulul de Voice Chat. Pentru a putea folosi aceast facilitate, ea trebuie verificat i activat din Preferine. nceperea unei conversaii n acest mod se face folosind butonul Speak. Fcnd clic pe butonul Destinations se va deschide un meniu care ofer o selecie de destinaii n simulator care se pot vizita. Accesnd butonul People se va afia un panou cu patru file cu titluri intuitive: Nearby se refer la personajele aflate n vecintate i cu care se poate interaciona. My Friends reprezint o list de persoane cu care s-a luat deja contact i care au acceptat prietenia. My Groups este o list de grupuri la care utilizatorul s-a alturat. Recent este o list de oameni cu care s-a luat contact recent. Butonul Profile ne furnizeaz o serie de informaii despre profil: Feed d posibilitatea de a publica i mpri informaii cu ali utilizatori About conine informaii despre utilizator n simulator i n realitate Picks conine informaii despre locaii preferate ale utilizatorului n simulator Groups afieaz informaii despre grupurile din care face parte utilizatorul Urmtoarele dou butoane, View i Move, ofer panouri de orientare i micare a camerei (View) i a avatarului (Move). Ele sunt foarte intuitive i uor de folosit.
Fig. 8. Second Life viewer Controalele de camer: Orbit, Zoom i Micare
Integrare sistem educaional online cu spaiu virtual 3D MMO
30
Fig. 9. Second Life viewer Controalele de micare a avatarului
De precizat este c micarea avatarului permite trei moduri de funcionare i nc unul adiional condiionat: Walking avatarul i va modifica poziia n mers. Running avatarul i va modifica poziia n alergare. Flying avatarul va zbura. Swimming avatarul va nnota (acest mod apare doar atunci cnd avatarul este n ap) Ultimul buton How to furnizeaz informaii ajuttoare n simulator. Binenteles, este posibil s personalizm aceast bar de instrumente, adugnd sau eliminnd butoane. Bara de unelte din stnga ofer un set de instrumente utilizate frecvent. Tabelul de mai jos explic pe scurt funciile pictogramelor de pe bara de instrumente din stnga. Tabel 1 Funcionalitate bar de unelte stnga Pictogram Etichet Funcionalitate
Avatar Schimbarea nfisrii avatarului
Appearance Schimbarea sau editarea nfisrii
Inventory Inventar
Search Cautare n simulator
Places Lista regiunilor favorite i a celor recent vizitate de utilizator
Voice Settings Setrile pentru voce
Mini-map Afieaz o versiune mic a hrii regiunilor
Este disponibil o hart a lumii ntregi. Pentru a o putea accesa trebui s mergem n bara de meniu din partea de sus a ecranului i s o deschidem sau s folosim combinaia de taste CTRL + M. Aceasta va afia harta lumii, indicnd regiunea i pozitia actual a avatarului. Punctele verzi pe Integrare sistem educaional online cu spaiu virtual 3D MMO
31
hart indic prezena altor utilizatori. Navigarea n harta se face cu mouse-ul i prin funcia de zoom disponibil. Dac dorim s ajungem repede ntr-o anumit locaie, o selectm pe harta i folosim butonul de Teleport, ce ne va duce instantaneu n acea locaie. Alternativ, doar dublu-clic pe orice punct de pe harta ne va teleporta la acel punct.
Fig. 10. Second Life viewer Harta lumii
Shared Media este o caracteristic nou i puternic, care i propune s fac distribuirea de coninut Web-based n interiorul simulatorului ntr-un mod foarte uor i intuitiv. Aceast caracteristic permite plasarea unei pagini Web pe orice obiect din simulator, cum ar fi un ecran plat sau una dintre feele unui cub, i de a interaciona cu pagina Web n acelai mod n care interacionm cu un browser Web clasic, cum ar fi Internet Explorer sau Firefox. Crearea i editarea obiectelor este unul dintre aspectele cele mai interesante i mai provocatoare ale unui client OpenSim. Procesul este destul de complex, iar utilitarul de Build permite i furnizeaz o serie larg de funcionaliti. Astfel, sunt disponibile o multitudine de tipuri de primitive din care se pot alege, se aduga i personaliza texturi pe obiecte, se pot aplica transformri n spaiu etc. Mai mult, fiecare obiect are un inventar propriu n care se pot aduga alte obiecte sau scripturi i permite setarea de permisiuni asupra acestora. Nu n ultimul rnd utilitarul pune la dispoziie i mijloace de alterare a terenului. Scripturile sunt i ele o parte foarte important ntruct acestea asigur modificri dinamice n timp real, ele fiind compilate i rulate direct n client. Integrare sistem educaional online cu spaiu virtual 3D MMO
32
4. Experimente Pentru a ajunge la ndeplinirea scopului proiectului, accea de a crea un prototip ce asigur funcii educaionale, au trebuit urmai mai muli pai, unii dintre ei aflndu-se nc n dezvoltare i extindere. 4.1 Campusul Universitii Politehnica Pentru a ndeplini cerina de a simula un mediu real, trebuie realizat o copie a campusului universitii, cu tot ce nseamn ea: cldiri, mediu natural, drumuri. Acest lucru este parial fcut ntruct nc se lucreaz la contruirea acestuia. 4.1.1 Hart n primul rnd am avut nevoie de o hart ct mai fidel care s urmeze nivelul real al nlimilor terenului. Pentru a atinge acest scop am folosit Google Earth, o aplicaie ce furnizeaz ntr-un mod ct de ct real aceste date.
Fig. 11. Google Earth Campusul Universitii Politehnica Bucureti
Am mprit harta ntr-un grid de regiuni astfel nct s o putem mapa pe regiunile din simulator i am stabilit mai apoi fii de nlime aproximativ dup cum se poate observa i n figura ce urmeaz.
Integrare sistem educaional online cu spaiu virtual 3D MMO
33
Fig. 12. mprirea campusului pe regiuni i nlimi de teren
Urmtorul pas a fost s modelez acest lucru ntr-un program specializat de generare a terenurilor. Pentru acest lucru am folosit L3DT, care genereaz un heightmap i care este uor de utilizat. Ultima ajustare a fost s corectez fiile stric orizontale, evalund deformaiile reale ale terenului n anumite zone. Rezultatul final l putem observa n figura de mai jos.
Fig. 13. Modelarea hrii n L3DT
Ultimul pas a fost n mod evident ncrcarea heightmap-ului n simulator, lucru care se face foarte uor printr-o comand de consol.
Integrare sistem educaional online cu spaiu virtual 3D MMO
34
Fig. 14. ncrcarea hrii finale n simulator
4.1.2 Campus Mediul nconjurtor este foarte important ntr-un spaiu virtual, de aceea acesta trebuie luat n serios i realizat ct mai autentic. n cazul nostru, spaiul trebuie s fie o replic ct mai fidel a campusului Politehnicii, pentru a asigura realismul necesar, oferind utilizatorilor o experien captivant. Cateva snapshot-uri a stadiului de dezvoltare n care se afl acum le putem observa n figurile ce urmeaz. El este nc n lucru, campusul ntregii universiti preconizndu-se a fi gata n trei sau patru sptmi, lucru realizat de studenii ce lucreaz la proiect n cadrul colii de var 3DXP.
Fig. 15. Vedere lateral din campusul virtual Facultatea de Automatic i Calculatoare Integrare sistem educaional online cu spaiu virtual 3D MMO
35
Fig. 16. Vedere lateral din campusul virtual Facultatea de Automatic i Calculatoare
Fig. 17. Vedere aerian din campusul virtual Facultatea de Automatic i Calculatoare 4.2 Modele 3D Pentru a oferi un plus de realitate i interactivitate, cladirile trebuie s fie accesibile i pe interior. Acest lucru se face prin folosirea de modele 3d complexe realizate in detaliu. n stadiul actual sunt modelate n detaliu doar Facultatea de Automatic i Calculatoare, mpreun cu Rectoratul universitii, dup cum se observ i n figurile urmtoare. Integrare sistem educaional online cu spaiu virtual 3D MMO
36
Fig. 18. Model 3D al Facultii de Automatic i Calculatoare
Fig. 19. Model 3D al Rectoratului Universitii Politehnica Bucureti
4.3 Sloodle SLOODLE este un pachet software care integreaz platforma de nvare online Moodle cu lumea virtual 3D Second Life i bineneles OpenSim. SLOODLE mbin aceste dou platforme distincte ntr-un singur mediu virtual cu activiti de nvare 3D/web amestecate. Cu SLOODLE, Second Life poate fi folosit ca un client 3D alternativ pentru Moodle, nlocuind tradiionalele pagini web statice bazate pe text. SLOODLE permite tutorilor de a utiliza Moodle ca o baz de date back-end pentru cursuri n lumea virtual. SLOODLE este acronimul pentru Simulation-Linked Object Oriented Dynamic Learning Environment. Exist mai multe abordri, n ncercrile de a integra lumi virtuale i medii virtuale de nvare. De exemplu, clientul software-ul folosit pentru a accesa lumea virtual ar putea fi modificat pentru a se conecta direct la sistemul de VLE. Alternativ, o lume virtual open-source ar putea fi utilizat - permind serverului lumii virtuale s fie modificat pentru a accesa direct baza de date Integrare sistem educaional online cu spaiu virtual 3D MMO
37
VLE. ntr-adevr, n cazul n care numrul de utilizatori, att n lumea virtual ct i VLE ar fi suficient de sczut, ambele sisteme ar putea rula simultan pe un singur server.
Abordarea adoptat de SLOODLE este de a folosi obiecte personalizate, construite n Second Life i de a folosi funciile de "http" de care dispune LSL pentru a comunica cu scripturile care ruleaz pe un server Moodle. Pentru o serie de motive, nu este posibil s apelm direct API-ul Moodle standard din obiecte scriptate n Second Life (lipsa de cookie-uri, limite privind cantitatea de date trimise sau primite n apeluri http, i necesitatea de a analiza datele formatate HTML n mod ntoarse n mod obinuit de Moodle). Astfel, nite scripturi personalizate cu rol de linker scrise n PHP sunt instalate pe serverul Moodle. SLOODLE ofer att obiectele scriptate pentru utilizare n Second Life ct i script-urile pentru instalarea pe Moodle. Astfel, SLOODLE cuprinde module i blocuri Moodle i obiecte din Second Life. Planurile de viitor sunt de a dezvolta o mai bibliotec de funcii, un API mai robust i mai complet pentru comunicare ntre lumea virtual i Moodle. Acest lucru va permite dezvoltatorilor de a crea noi obiecte virtuale n lume, fr a fi nevoie s scrie script-uri noi pentru legtur - ceea ce face mai uor extinderea funcionalitii pe SLOODLE. Principalele obiecte i module SLOODLE sunt: SLOODLE Controller. Acest modul Moodle poate fi adugat la un curs de un profesor sau de admin. Acest modul este folosit pentru a permite utilizarea SLOODLE la un curs pentru a controla i a autoriza obiecte SLOODLE n Second Life. Acest lucru permite administratorilor de curs Moodle s controleze i s limiteze care obiecte din Second Life pot accesa datele cursului Moodle. SLOODLE set. Acest obiect Second Life conine un set de obiecte diferite SLOODLE Second Life. Acesta poate fi folosit de tutori pentru a instania obiecte SLOODLE n Second Life SLOODLE Registration Booth (right). Una dintre sarcinile cele mai fundamentale pentru SLOODLE este de a asocia utilizatori Moodle la avatarele lor din lumea virtual. Atunci cnd un utilizator face clic pe cabina de nregistrare, n timp ce este autentificat cu avatarul lor, li se cere s viziteze o pagina de nregistrare Moodle. Acest lucru permite Moodle s verifice identitatea Second Life a utilizatorului Moodle, iar aceste date sunt stocate apoi n Moodle. Alternativ, un obiect 'Login Zone', n Second Life permite ca nregistrarea de avatare s fie condus din Moodle, urmat apoi de o logare n Second Life. Exist o gam larg de instrumente i caracteristici SLOODLE disponibile. Aceast list nu este exhaustiv, dar prezint pe scurt cteva dintre instrumentele cele mai des folosite i mai multe importante. Web-intercom. Un chat-room, care unete chat-ul Moodle chat-url Second Life mpreun. Elevii pot participa la discuii n Second Life folosind chat-ul Moodle i invers. Discuiile pot fi arhivate n siguran ntr-o baz de date Moodle. Quiz chair (i Pile-on Quiz). Evaluarea n Second Life - note n Moodle. Instrumentele de test permit tutorilor s creeze teste n Moodle, dar permite elevilor s ia testul ntr-un mediu 3D mult mai atractiv. Tutorii pot revizui notele rapid i uor n cartea de note Moodle standard. Acesta utilizeaz modulul de teste Moodle standard pentru back-end, dei tipurile de ntrebare valabile sunt mai limitate (cu variante multiple, adevrat-fals, numeric i ntrebri simple cu rspuns text). Distributor. Un automat Second Life poate fi umplut cu obiecte de ctre un tutore, care s permit studenilor accesul uor la articole pre-selectate. O interfa web permite elevilor s selecteze elemente din Moodle - sau pentru tutore pentru a trimite un produs pentru elevii nscrii n clasa. Multi-function SLOODLE Toolbar. mbuntete interfaa Second Life cu utilizatorul. Utilizai o serie de gesturi n clas, pentru a primi rapid o list cu numele de utilizator Moodle ale avatarelor din apropiere sau de a scrie note direct ntr-un blog Moodle din Second Life. Integrare sistem educaional online cu spaiu virtual 3D MMO
38
Choice tool (right). Acest lucru permite studenilor s voteze (i de a vedea rezultate), n Second Life, precum i n Moodle. Utilizeaza modulul Moodle standard "Choice'" pentru backend. Presenter (below). Permite crearea rapid de prezentri n Second Life folosind slide-uri, elemente video (inclusiv YouTube) i / sau pagini web de pe Moodle. Apare n Second Life, fr a fi nevoie s trecem prin procese de durat pentru a converti sau ncrca imagini. Funcionalitatea pentru Presenter poate permite conversia rapid a prezentrilor de la format PDF la un set de imagini stocate n Moodle pentru vizualizare n Second Life. Prezentrile pot fi, de asemenea, vizualizate prin intermediul unei pagini Moodle, care s permit elevilor s revizuiasc comod prezentarea online. Postcard Blogger. Permite utilizatorilor s trimit cri potale cu fotografii din Second Life - i s aibe capturi de ecran i textul de nsoire n mod automat ncrcate n blog-ul lor Moodle. Acest lucru depinde de disponibilitatea de biblioteci software suplimentare de pe serverul Moodle.
Fig. 20. Instrumente Sloodle integrate cu OpenSim
4.4 Streaming O parte important n procesul de nvare interactiv o deine i posibilitatea de a face streaming. Acest lucru faciliteaz vizionarea de cursuri sau de conferinte online, direct n spaiul virtual 3D. Pentru a putea beneficia de aceast funcie, trebuie urmai civa pai simpli. Practic, se seteaz o textur media, goal, colorat n negru, pe care legm un url de la care se capteaz streaming-ul. Acest lucru este posibil i prin scripturi, gestuinea n acest caz fiind mult mai personalizat. Testarea acestui modul s-a fcut folosind o captur direct a ecranului pe un server de streaming public dup cum se poate observa i n figurile ce urmeaz.
Integrare sistem educaional online cu spaiu virtual 3D MMO
39
Fig. 21. Demonstraie de streaming n OpenSim primul cadru
Fig. 22. Demonstraie de streaming n OpenSim al doilea cadru Integrare sistem educaional online cu spaiu virtual 3D MMO
40
5. Perspective de dezvoltare Potenialul pentru Metaversuri i lumi virtuale, cum ar fi Second Life i OpenSimulator, pentru a oferi un training unic i un mediu de partajare a cunotinelor, este enorm. Simulrile i lumile virtuale angajeaz elevii ntr-o gndirea cognitiv de nivel nalt cum ar fi interpretarea, analiza, descoperirea, evaluarea i mai presus de toate de rezolvarea problemelor. Exist un interes tot mai mare printre practicieni i cercettori pentru a vedea ce permit lumile virtuale i de a explora pe deplin potenialul lor ca medii educaionale formare unic i de partajare de cunotine. Lumile virtuale ofer posibilitatea de a structura nvarea la distan, n moduri captivante. Actual tehnologie virtual din lume ofer o gam larg de capabiliti, care trebuie s fie n continuare adncite pentru a beneficia la maxim de avantajele aduse de aceasta. Utilizarea de metaversuri i lumi virtuale 3D cere s se introduc abordri inovatoare n domeniul educaiei colare. OpenSimulator este o platform open-source, ceea ce d libertate dezvoltatorilor s se extind i s adauge sau s altereze funcionaliti. Totui, pachetul este nc n stadiu alpha, adic nu este publicat o variant oficial stabil. 5.1 Extensibilitate OpenSimulator is an open source multi-platform, multi-user 3D application server. It can be used to create a virtual environment (or world) which can be accessed through a variety of clients, on multiple protocols. OpenSimulator allows virtual world developers to customize their worlds using the technologies they feel work best - we've designed the framework to be easily extensible. (Prima pagina OpenSimulator.org). pursuing innovative directions towards becoming the bare bones, but extensible, server of the 3D Web (Prima pagina OpenSimulator.org). Din afirmaiile dezvoltatorilor platformei OpenSim vedem c framework-ul este destinat s fie unul uor extensibil. Printre principalele argumente ar fi: Platforma este open-source Se pot folosi o varietate de clieni i protocoale multiple Se pot aduga dinamic module de extindere Se pot folosi scripturi Atfel, OpenSim acord dezvoltatorilor multe metode prin care s poat personaliza i extinde funcionaliti, dup cerinele fiecrui proiect. Totui, avnd o arhitectur stufoas, cu multe clase, este de preferat s nu se altereze codul surs de baz al platformei dect n cazuri n care aceasta este singura variant de rezolvare. Pentru majoritatea funcionalitilor se pot crea module care se vor ataa dinamic sau se pot folosi scripturi. 5.1.1 Module de regiune Modulele, denumite i IRegionModule, sunt DLL-uri ncrcate la iniializarea simulatorului. Ele se execut n bucla principal a acestuia i deci, au acces la toate facilitile i metodele oferite. De obicei modulele se nregistreaz pentru un numr de evenimente (mesaje, autentificri etc) i le manipuleaz astfel nct s-i ating scopul. Exist mai multe tipuri de module de regiune: Non-shared cnd pentru fiecare regiune/scen se creaz un modul Shared cnd un singur modul este distribuit n toate regiunile de pe acel simulator Integrare sistem educaional online cu spaiu virtual 3D MMO
41
Pentru a putea fi nregistrate i instaniate de ctre server, modulele de regiune trebuie s implementeze o interfa de baz: public interface IRegionModuleBase { string Name { get; } Type ReplaceableInterface { get; } void Initialise(IConfigSource source); void AddRegion(Scene scene); void RemoveRegion(Scene scene); void RegionLoaded(Scene scene); void Close(); } Fiecare metod prezent n interfa marcheaz un anumit moment n integrarea modului. Spre exemplu, metoda Initialise se apeleaz atunci cnd modulul a fost ncrcat la runtime, dar nainte de a fi adugat la scen, iar metodele AddRegion i RemoveRegion se apeleaz atunci cnd o regiune este adugat sau scoas din modulul respectiv. 5.1.2 Scipturi Scripturile sunt folosite pentru a ataa diverse comportamente unor obiecte. Ele sunt scrise i compilate direct n viewer i ataate n inventarul obiectului n cauz. Scripturile au mai multe proprieti ce ofer dezvoltatorilor o mulime de opiuni: urmeaz o sintax familiar ca a unui limbaj C sau Java sunt bazate pe evenimente permit definirea de stri au predefinite variabile 3D (vectori etc) funcii pentru manipularea fizicii obiectelor i a avatarului Pot fi ataate mai multe scripturi aceluiai obiect, permind astfel combinarea lor pentru a rezulta funcionaliti complexe. Totui, aceste scripturi au i diverse limitri: nu sunt valabile i nu activeaz dect n regiunea n care este obiectul nu pot modifica dect starea obiectului pe care ruleaz scriptul. Pentru a putea altera alte obiecte din jur este necesar s se implementeze un comportament de telecomanda. Astfel, obiectul care iniiaz modificrile trimite mesaje pe anumite canale care sunt recepionate de elementele int prin scripturi locale pe fiecare element, acestea din urm efectund modificrile aferente comenzii respective. 5.2 Scalabilitate Fiind o aplicaie MMO, scalabilitatea este o cerin care trebuie ndeplinit obligatoriu. Sunt mai multe moduri de a msura scalabilitatea unei aplicaii. n mod ideal, o aplicaie cu adevrat scalabil ar trebui s: funcioneze pentru un utilizator la fel de bine ca pentru sute sau mii de utilizatori simultan funcioneze de dou ori mai bine la instalarea pe un calculator de dou ori mai performant (de dou ori mai multe resurse), de trei ori mai bine pe un calculator de trei ori mai performant i aa mai departe Integrare sistem educaional online cu spaiu virtual 3D MMO
42
Totui, n varianta Standalone, unde aplicaia de OpenSim ruleaz cu totul ntr-un singur proces, perfomana scade o dat ce sunt conectai o sut sau mai muli utilizatori. De aceea, varianta Stanalone este adesea folosit doar pentru dezvoltare i testare ntruct necesit configurri mai simple, iar n varianta de producie se folosete arhitectura Grid, mult mai scalabil i cu elementele distribuite pe staii diferite. Bineneles, scalabilitatea va fi influenat att de resursele hardware disponibile pe staiile de server ct i de infrastructura i viteza reelei. Integrare sistem educaional online cu spaiu virtual 3D MMO
43
6. Testare Au fost realizate teste unitare, teste de integrare, teste de stres i performan i bineneles testarea de sistem. Fiecare modul a fost dezvoltat i experimentat separat, realiznd periodic teste unitare pentru verificarea funcionalitii. Testele de integrare au avut drept scop verificarea colaborrii corecte dintre diversele module i experimente ale aplicaiei. Spre final a fost realizat testarea de sistem pentru a asigura funcionalitatea sistemului propus i a ntregului flux de lucru. La sfrit s-au realizat i teste de stres i performan petru a testa scalabilitatea sistemului i fluiditatea aplicaiei i a funcionalitilor dorite. Acest lucru s-a fcut att prin conectarea simultan a mai multor staii de lucru la server, ct i prin rularea intens de scripturi i umplerea scenei cu obiecte cu diferite funcionaliti sau comportamente. Rezultatele au fost destul de bune pe o arhitectura Standalone. Integrare sistem educaional online cu spaiu virtual 3D MMO
44
7. Concluzii Odat cu avansarea tehnologiei se schimb att mediul de lucru ct i conceptele. Spaiile virtuale reprezint un viitor n dezvoltare, iar integrarea acestora ca medii i instrumente pentru nvare aduce o inovaie i o investiie real n sistemul educaional. Puterea de colaborare crete, la fel motivaia i implicarea studenilor i a elevilor. Acest lucru favorizeaz un mediu interdisciplinar colectiv i productiv, depind bariera spaiului fizic, i deschiznd noi orizonturi de cercetare i de nvare. Aceste medii trebuie att s completeze metodele clasice de nvare ct i s ajute la continuarea nvrii i dincolo de ora de curs. Fac parte din echipa pentru acest proiect nc de la nceputurile lui, acum patru ani, lund parte la toate etapele i problemele ntlnite. Astfel, am trecut prin fazele de proiectare, de prototipare, de stabilirea i discutare a tehnologiilor i ntr-un sfrit, de dezvoltare a aplicaiei finale. Aplicaia de fa este un experiment, dorindu-se obinerea unui prototip care s integreze facilitile unei platforme educaionale cu cele ale unui spaiu virual 3D MMO. Proiectul este nc n dezvoltare sub ndrumarea mea i a domnului profesor coordonator Alin Moldoveanu la coala de var 3DXP susinut de grupul de grafic a Facultii de Automatic i Calculatoare, astfel nct la nceputul anului colar s fie distribuit o prim variant funcional, online 24/7, la care orice poate s se nregistreze, s primesc un spaiu personal i s existe o suit de aplicaii de baz utile. Prin integrarea mai multor platforme educaionale, aducnd elemente care s mbunteasc procesul de nvare i facilitnd accesul la informaie, 3D UPB are n fa o platform de nvare i informare unic, care ofer utilizatorilor o experien captivant.
Integrare sistem educaional online cu spaiu virtual 3D MMO
45
B I B L I OGR A F I E [1] J. Kemp, D. Livingstone, Massively multi-learner: Recent advances in 3D social environments. Computing and Information Systems Journal 10, no. 2, School of Computing, University of Paisley, 2006. [2] Marin VLADA, Mircea POPOVICI, Realitatea Virtual (Virtual Reality), tehnologie modern a informaticii aplicate, CNIV-2004, VIRTUAL LEARNING - Conferina Naional de nvmnt Virtual, Ediia a II-a , 29- 31 oct. 2004 [3] C. Manetta, R. Blade, Glossary of Virtual Reality Terminology, International Journal of Virtual Reality, Vol.1 Nr.2, 1995. [4] H. Fuchs, G. Bishop, Research directions in virtual environments, 1992 [5] R.A. Earnshaw, M.A. Gigante, Virtual Reality Systems, 1993 [6] Jargon Dictionary, 1995 [7] C. Cruz-Neira, Virtual Reality Overview, SIGGRAPH, 1993 [8] L. i E. von Schweber, Virtually Here. PC Magazine, March 14, 1995 [9] D. Josefsson, An interview with William Gibson , 1995. [10] I. Manolescu, Videologia - o teorie tehno-cultural a imaginii globale, Ed. Polirom, 2003 [11] G. Grosseck, Incursiune n ciberspatiu (I), Revista Informatic Economic, nr. 3(27), 2003 [12] R.K. Moore, 1997, Democracy and cyberspace, Conferinta Internaional Discourse and Decision Making in the Information Age, University of Teesside, 18 septembrie, 1997 [13] Mercedes Gisbert Cervera, Vanessa Esteve Gonzalez, Maria del Mar Camacho Marti, Delve into the Deep: Learning Potential in Metaverses and 3D Worlds, July 2011. [14] E. Castronova, Synthetic Worlds: the Business and the Culture of Online Games, University of Chicago Press, Chicago 2005. [15] Smart, Cascio, Paffendorf, The Metaverse Roadmap, 2007 [16] Tu, Blocher & Roberts, Constructs for Web 2.0 learning environments: A theatrical metaphor, 2008 [17] Dwyer, Hiltz & Passerini, Tu et al, 2008 [18] Boyd & Ellison, Social network sites: Definition, history, and scholarship. Journal of Computer-Mediated Communication, 2007 [19] Thomanssen & Rive, International Collaboration and Design Innovation in Virtual Worlds: lessons from Second Life, 2010 [20] E. Castronova, Virtual Worlds: A First-hand Account of Market and Society on the Cyberian Frontier, CESifo working Paper, n. 618, December 2001. [21] E. Castronova, The Founding Features of Virtual Worlds, 2003 [22][23][24] Milgram, Takemura, Utsumi i Kishino, Virtuality Continuum, 1994. [25] Terms of Service, Second Life. [26] G. Davies, Introduction to the Second Life Viewer, December 2011. Alin Moldoveanu, Florica Moldoveanu, Victor Asavei, Costin Boiangiu, Realitatea Virtuala, 2009 E. Schonfeld, Augmented Reality Vs. Virtual Reality: Which One Is More Real?, 2010 Global Industry Analysts, Massively Multiplayer Online Games - A Global Strategic Business Report, 2010 Dr. SabinCorneliu Buraga, Comunicare n medii electronice - Curs 13 : Realitatea virtual http://opensimulator.org http://secondlife.com http://moodle.org