proiect licenta automatica gradinaru v alexandru 19931

Upload: shtefanme

Post on 03-Jun-2018

271 views

Category:

Documents


3 download

TRANSCRIPT

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    1/45

    UNIVERSITATEA POLITEHNICA BUCURETI FACULTATEA DE AUTOMATIC I CALCULATOARE

    DEPARTAMENTUL CALCULATOARE

    PROIECT DE DIPLOM Integrare sistem educaional online cu spaiu virtual 3D MMO

    Coordonator tiinific:Conf. Dr. Ing. Alin Moldoveanu

    Absolvent:Alexandru Grdinaru

    BUCURETI

    2012

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    2/45

    2

    Cuprins1. 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

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    3/45

    Acum civa ani, Jeremy Kemp i Livingstone Daniel au scris o lucrare scurt, n care aucomparat unele dintre modurile diferite n care medii virtuale de nvare bazate pe web i lumilevirtuale 3D generate de utilizator ar putea sprijini activitile de nvare i educaie . Din acestlucru 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 laactivitatea de nvare. Atfel, este experimentat i implementat un prototip ce mbin un sistemonline de nvmnt (Moodle), cu o lume virtual interactiv i atractiv, la care se pot conecta ,interaciona i colabora simultan o multitudine de utilizatori.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    4/45

    Integrare sistem educa ional 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 nactivitile 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 ndiferite 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 acercettorilor 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 de zvoltate 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 acestmotiv este important s lum n considerare toate impli caiile 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 spa ii foarte eficiente de nvare. Din momentce acestea sunt g eneralizate, mai degrab dect context uale, ele pot atinge toate disciplinele.Aspectele sociale ale lumii virtuale devin extrem de relevante pentru scopuri educaionale. Acestelumi faciliteaz asumarea de roluluri i elaborarea de scenarii, care s permit elev ilor s-i creezetemporar identiti i sarcini fr a suporta consecine reale. Att universitile ct i industria au

    recunoscut posibilitile de nvare disponibile n metaversuri i lumi virtuale 3Dca spaii care oferatt 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 exprimarePrin 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 cuinstrumente de nvare. Lucrarea ine seama de inovaiile care ar trebui introduse n nvmntulcolar i are n vedere cadrele largi care au fost dezvoltate pentru a sprijini concepia i studierea nvrii n lumilevirtuale.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    5/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    5

    1.2 Consideraii de ordin general

    Aplicaia prezentat n lucrarea de fa propune o replic virtual a campusuluiUniversitii Politehnica n care sunt integrate sisteme de educaie i de informare. Lucrareaimplementeaz o platform 3D MMO cu acces publiccare 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 propriucare 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 iinteraciunea cu utilizatorul.

    Iniial va fi necesar i crearea unui cont de utilizator. Avantajele sistemului: acces independent de locai e (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 cumediul 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 funciide socializare i de interaciune ntre utilizatori

    implicare (immersive) utilizatorul se va implica direct n activitatea de nvare i deparcurgere a spaiului virtual, susinnd astfel motiva ia acestuia prin feedback,rspunsuri, oportuniti de explorare i prin realism n ceea ce privete spaiuldesfurrii

    1.3 Funciile aplicaiei

    Aplicaia ofer o suit de aplicaii caracteristice unui sistem 3D MMO, la care se adaug iaplicaii 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 timpreal. clieni care creaz coninut 3D n timp real.

    personalizarea aplicaiilor virtuale prin folosirea de module, plugin-uri i diversescripturi.

    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 unavatar customizabil, i beneficiaz de un inventar propriu n care poate salva obiecte, fiierepersonale i chiar scripturi.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    6/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    6

    1.4 Contextu l n care a fost dezvoltat aplicaia

    Aplicaia a fost dezvoltat n cadrul proiectului 3D UPB - Replica virtual a UniversitiiPolitehnica Bucureti - sub forma unui spaiu virtual 3D MMO extensibili 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 spa iul virtual, interacionnd n cadrul acestuia interac iuni complexe: deplasare, ac iuni, gesturi, comunicare (text + voce), etc. accent pe socializare, comunicare, grupuri de preocup ri comune, gzduirea de

    evenimente online, etc.

    extensibil: fiecare utilizator i va putea defini propriul su spaiu virtual n cadrul 3DUPB, pentru a-i prezenta interesele, g zdui evenimente private pentru prieteni, etc. reflexivi 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 leexecute, asem ntor unor "bo i". Acesta deschide calea spre interac iuni complexe, implicnd attutilizatori 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 mul ime de aplicaii dintre cele mai diverse. Cteva dintre acesteasunt deja implementate, ele conturnd doar o idee asupra a ceea ce sistemul ar putea deveni ntimp.

    Un prim prototip al 3D UPB a fost creat n cadrul workshopului "Graphics & Virtual Reality

    2009" - desf urat n perioada vacan ei de var n cadrul Facultii de Automatic i Calculatoare. ncepnd de atunci dezvoltarea a continuat, proiectul ajungnd aproape de un stadiu beta n care vafi testat i folosit public la nivelul facultii.

    1.5 Categoria de pr ograme n care se ncadreaz aplicaia

    Dup cum s-a mai precizat, aplicaia de fa combin mai multe categorii de aplicaiicomplexe, integrnd ntr-o singur instan independent concepte de 3D, MMO i E-Learning.

    Proiectul de fa este un experiment, scopul final fiind nglobarea tuturor funcionalitilordefinite n proiectul 3D UPB, asigurnd astfel o replic virtual a ntregului campus a UniversitiiPolitehnica 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 lanevoia de mbinare a mai multor domenii, instrumente i tehnologii.

    Astfel, pentru platforma 3D MMO s-a folosit framework-ul OpenSimulator, la care seconecteaz clieni universali Second Life, pentru platforma educaional s-a folosit un sistemMoodle, 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.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    7/45

    Integrare sistem educa ional 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 unuimediu 3D n care utilizatorul vizualizeaz i manipuleaz coninutul acestuia. Termenul este compusdin dou prti: realitate, prin care ntelegem un mediu natural, perceput de om prin intermediulsimurilor i virtual, cuvnt care este folosit frecvent n domeniul informaticii pentru a desemna unmediu care simuleaz pe calculator realitatea obiuit a omului. Reiese faptul c realitatea virtualofer o modalitate prin care calculatorul i echipamentele specializate pot altera modul n care omulpercepe 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 arelibertatea 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 cafcnd parte din acel mediu virtual care simuleaz o realitate. La baza acestei simulri st bineneleso combinaie avansat de hardware i software, de o ntreag reea de subsisteme ce comunic ntreele pentru redarea intera ciunii.

    De-a lungul timpului, s-au ncercat mai multe formulri pentru conceptul de realitatevirtual. Cele mai reprezentative ar fi [2]:

    Realitatea Virtual este un sistem folosit pentru a crea o lume artificiala pentru unutilizator 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 careofer 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 sebazeaz pe display-uri 3D stereoscopice purtate de ut ilizator, urmrite, urmrirea minilor/corpuluii un sunet binaural. RV este o experien imersiv, multi senzorial [5]

    Simulri pe calculator care utilizeaz o grafic 3D i astfel de dispozitive, cum suntDataGlove, pentru a permite u tilizatorului s interacioneze cu simularea [6]

    Realitatea Virtual se refer la medii imersive, interactive, multi -senzoriale, centrate spreutilizator, tridimensionale, generate de calculator i combinarea tehnologiilor necesare construiriiacestor medii [7]

    Realitatea Virtual ne permite s navigm i s vedem o lume n trei dimensiuni n timpreal, 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 acalculatoarelor n societate, o realitate artificial: Cyberspace a global artificial reality that can bevisited simultaneously by many people via networked computers [9]. Avansnd spre secolul XXIputem observa c acest lucru este din ce n ce mai pronunat, fiecare calculator fiind legat la Internetsimultan i deci la o form de realitatea artificial global , determinnd un nou tip de interaciunesocial. 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 maiputin un construct ficional al unui viitor tiinifico-fantastic i mai mult materializarea prezent aunei infrastructuri comunicaionale aflate ntr -o accelerat dezvoltare tehnic , extinderea acestuiaputnd duce la transformarea sa ntr-un habitat individual indispensabil [10]. Totui ciberspaiul nu

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    8/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    8

    este un sistem electronic, ci mai degraba o experien, fiind descris de Philip DeWitt ca tehnologiautilizat 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 realitateconcret i indispensabil, cel puin prin echivalarea sa cu Internetul: n ceea ce privesteinfrastructura de transport, ciberspa iul reprezint integrarea natural i inevitabil a reelelordisparate, luate ca un tot unitar, ce alc tuiesc sistemul nervos al societ ii moderne. [12]

    Avansarea tehnologic a permis dezvoltarea de calculatoare puternice i maini de lucru cucaracteristici extraordinare. Astfel, calculatoarele personale au devenit staii puternice , iarechipamentele specializate sunt disponibile i accesibile oricrui utilizator. n acest context,dezvoltarea realitii virtuale i migrarea ctre o realitate tridimensional alternativ a fostinevitabil. 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 deprogramare 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 ntreinepropriul spaiu virtual prin aplicaiica Second Life, OpenSimulator sau altele.Totui, tehnologia estecomplex i necesit alturarea mai multor domenii cum ar fi modelarea 3D, programarea ireelistica. Astfel, modelarea este foarte important ntruct ea asigur crearea mediului virtualrealistic, innd cont totui i de performan. Astfel, trebuie gsit un echilibru ntre realismulobiectelor modelate i simulrile fizice care necesit foarte mult procesare hardware. Pentrucrearea i redarea efectiv a scenelor grafice din mediile virtuale se utilizeaz biblioteci i interfeegrafice, diverse toolkit-uri i API-uri i chiar limbaje de programare destinate special simulrilor. Nicipartea de conectivitate nu este mai prejos n complexitate, ntruct mediile virtuale sunt de obiceispaii sociale ce necesit gestionarea unui numr foarte mare de utilizatori conectai simultan i careinteracioneaz 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 preluatdin romanul Sci-Fi"Snow Crash", scris de Neil Stephenson n 1992. Dei noiunile nu sunt exactsinonime, o discuie detaliat despre acest subiect este nc activ n literatura de specialitateexistent. Cu toate acestea, fiind de acord cu Castronova [14] , vom presupune c lumea virtual iMetaverse-ul poate fi considerat la fel.

    O lume virtual este o simulare a unui spaiu, o rep rezentare n trei dimensiuni aelementelor geografice, a orae lor sau o simulare digital a mprejurimilor reale. Second Life, deexemplu, este un mediu 3D care permite interaciuni ntre utilizatori, printr -o reprezentare, careeste denumit Avatar. Principalele caracteristici ale lumilor virtuale sunt simplitatea utilizrii,facilitile lor de colaborare sau atractivitatea caracteristicilor 3D care ofer o senzaie nou i foartecaptivant n utilizare. Toate trsturile menionate au facut din lumile virtuale un scenariuinteresant pentru a testa medii inovatoare de nvmnt sau de a aplica noi teh nici de data mining. n plus, participanii la o lume virtual de succes au un profund sentiment de prezen n aceastlume.

    Un Metaverse este un concept mult mai complex. n ultimii ani, termenul a evoluat dupviziunea lui Stephenson n 1992 a unei lumi virtuale 3D immersive, n care sunt incluse aspecte alelumii fizice, cum ar fi obiecte, actori, interfee i reele care construiesc i interacioneaz cu mediilevirtuale.

    Din 2007 pn n 2008, Acceleration Studies Foundation (ASF) o fundaie non -profit cusediul n SUA i cu un comitet de conducere internaional i partenerii au explorat viitorul

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    9/45

    Integrare sistem educa ional 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 punaccentul pe diferite funcii, tipuri sau seturi de tehnologii metavers e:

    Augmented Reality (Realitate mbuntit) . Tehnologiile metaverse mbuntesclumea fizic extern pentru individ, prin utilizarea de sisteme de localizare contiente i interfeelecare proces eaz i stratific informaii legate, suprapunnd aceste lucruri peste percepia noastr dezi 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 obiectefizice, 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 mult emoduri. Jocurile virtuale sunt orientate spre un scop, i au loc n limitele regulilor de joc. Lumivirtuale sociale ofer niveluri diferite de libertate n termeni de avatar (reprezentarea digital a unuiparticipant), 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 form2D sau 3D. Sistemele GIS sunt adesea lumi 2D oglind. Google Earth este un exemplu de o lume 3Doglind.

    n ceea ce privete tipologia de metaversuri i lumi virtuale, spaiul 3D pentru formareprofesional, din punctul de vedere al proceselor de nvare, po ate fi considerat aproape de ceea ceeste 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 ficonstituit din punctul de vedere al procesului deinstruire:

    Cognitiv / scripturi : Procesele de formare trebuie s spioneze pentru SL pentru a ajuta pestudeni s dezvolte procese de nvare semnificative imediat i pentru a putea dezvolta acesteprocese mentale ntr-un mod social.

    Social / actor i: 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 digitali s i asume rolul corespunztor n aceast lume, care reprezint mediul de instruire [17]. n

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    10/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    10

    acelai fel, standarde de funcionare i modele de comportament trebuie s fie creat e cu scopul de aasigura succesul procesului de predare- nvare.

    Reea / etape : Aceleai instrumente de comunicare care le ofer SL ajut la crearea unuiclimat 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 areloc ntr-un mediu social. Din acest motiv, instrumentele 2.0, inclusiv SL, au un asemenea potenial nceea ce privete promovarea procesului de nvare. "Acte le 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 digitale3-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, deo conexiune la Internet), i n acelai timp de un numr mare de persoane, cu o comand a uneipersoane care afecteaz rezultatele de comand ale altor persoane.

    Fizic : oamenii acceseaz pr ogramul printr-o interfa care simuleaza un mediuFirstPerson fizic pe ecranul computerului lor, mediul n general guvernat de legile naturale alePmntului, 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. Realitateavirtual (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 culumea real din acest mediu. n loc de a considera AR i VR ca i concepte exacte opuse, Milgrampretinde o re alitate virtual (RV) continuum [22].

    Scopul realitii augmentate este de a aduga informaii i sens la un obiect sau o locaiedin domeniul real. Spre deosebire de realitatea virtual, realitatea mbuntit nu creaz o simularea realitii. n schimb, este nevoie de un obiect real ca spaiu de fundaie i ncorporeaz tehnologiicare 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, realitateaaugmentat 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 purtat e de ctre chirurg , combinatecu o interfa de calculator ca re suprapune datele peste persoan ntins pe masa de opera ie. nalte cazuri, realitatea augment at 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 lucrusau a unui loc mult mai semnificativ.

    Realitatea mbuntit a fost pus n utilizare ntr-o serie de domenii, inclusiv imagisticamedical, unde medicii pot accesa date despre pacienti; n aviaie, n cazul n care instrumentele depiloi arat datele importante despre terenul pe care l au n vizor; n nvmnt , caz n caretehno logia ofer studenilor sau tehnicieni lor datele necesare despre obiecte specifice cu carelucreaz; i n muzee, n cazul n care artefactele pot fi etichetate cu informaii, cum ar fi contextulistoric al acestuia sau unde a fost descoperit. n cadrul fa cultilor, profesorii ncep s oferestudenilor experiene mai semnificative prin ataarea de coninut educaional unor locuri sauobiecte specifice. n mai multe discipline, munca pe teren reprezint o parte important a cursului,

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    11/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    11

    iar prin completarea acestor explor ri 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 mediulEnvironmental Detectives de la MIT, de exemplu, elevii nva despre tiinele mediului i aecosistemelor prin gsirea de indicii i rezolvarea unui mister n campusul MIT folosind PDA-uridotate cu dispozitive GPS.

    O gam larg de tehnologii pot fi utilizate pentru realitatea augmentat. Multe proiecte derealitate mbuntit utilizeaz obiecte de acoperit capul sau un dispozitiv similar care proiecteazdate n raza de vedere a utilizatorului, care corespunde cu un obiect real sau un spaiu pe careutilizatorul 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 spermit elevilor s identifice diversele componente i s poat accesa specificaiile tehnice aleacestora. 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. Realitateaaugmentat nu este doar un fiier text sau multimedia ajuttor , ci o tehnologie conceput pentru avedea un obiect sau o locaie adevrat i s furnizeze utilizatorului informaii adecvate lamomentul potrivit. Augmented Reality este conceput pentru a estompa linia dintre realitatea cucare se confrunt utilizatorul i beneficiile oferite de tehnologie.

    Dispozitivelede calcul, mai ales cele fr fir, devin tot mai puternice i tot mai rspndit e. n acelai timp, costurile pentru aceste dispozitive sunt n s cdere. Cu o tehnologie hardware attcu fir ct i fr fir care se apropie din ce n mai mult de ubiquitous, apar noi oportuniti de autiliza tehnologia pentru a mbogi experiena persoanelor fizice despre obiecte i locuri. Deoarecetoate domeni ile de cercetare academic beneficiaz de fond i de context, realitatea augmentat areposibilitatea 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 fibeneficiarii 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 virtualitateaugmentat) se refer la fuziunea de lumi reale i virtuale pentru a produce noi medii i vizualizri ncare 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 Kishinoau definit realitatea mixt ca "...anywhere betweenthe extrema of the virtuality continuum " [23] (VC), unde continuumul virtual se ntinde de la realcomplet pn la un mediu complet virtual cu o realitate augmentat i o virtualitate augmentatvariind ntre aceste extreme.

    "The conventionally held view of a Virtual Reality (VR) environment is one in which theparticipant-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 physicallaws ordinarily governing space, time, mechanics, material properties, etc. no longer hold. What maybe overlooked in this view, however, is that the VR label is also frequently used in association with avariety of other environments, to which total immersion and complete synthesis do not necessarilypertain, but which fall somewhere along a virtuality continuum. In this paper we focus on aparticular subclass of VR related technologies that involve the merging of real and virtual worlds,which we refer to generically as Mixed Reality (MR)." [24]

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    12/45

    Integrare sistem educa ional 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 trebuiesacopere toate cele trei elemente:

    Massive - Constituit de utilizatori din toat lumea n cifre variind de la zeci la milioanede autentificri n acelai timp la un moment dat.

    Multiplayer - Juctorii dein personaje care interacioneaz cu alte charac tere ntr-olume 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 permiteprezena live.

    Astfel, un MMO presupune existena unui mediu virtual imens, guvernat de un set dereguli, n care un numr foarte mare de utilizatori pot socializa i interaciona n timp real utilizndavatare.

    Elementele tehnice din spatele acestui concept cuprind o arhitecur client -server, cuservere distribuite, cu elemente de redare grafic i cu o baz de date care stocheaz informaiilenecesare. Astfel, tehnologia destul de complex necesar susinerii unui astfel de server arestricionat pn acum aceast industrie la piaa jocur ilor pe calculator, conceptul fiind un state ofthe art n acest domeniu.

    Un MMO trebuie s fie scalabil, s ofere un univers persistent care s funcionezeindiferent 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 sol uii de eLearning n acest domeniu n continu dezvoltare. Astfel, procesul de nvare se poate stimula prin ceea ce ofer lumilevirtuale i anume imersivitate, interactivitate i un mediu tridimensional dinamic.

    Practic, conceptul de MMO vine ca o soluie tehnic pentru implementarea unuiciberspaiu, care s asigure o lume virtual global la care se pot conecta milioane de utilizatori.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    13/45

    Integrare sistem educa ional 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 pe23 iunie, 2003. Un numr de programe gratuite, client sau viewer, permite utilizatorilor de SecondLife, 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 laactiviti individuale i de grup, i deasemenea 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 jocorganizat, cu reguli impuse i unde s fie urmrit un anumit scop. Pe situl web oficial, Second Lifeeste descris ca fiind o lume virtual imaginat i creat de rezidenii ei; ntr-adevr, SL este o lumediversificat, n care poi ntlni oameni din toate colurile lumii reale. Este o reea de tip social, careface 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 adaugainteractivitate la obiecte. Dei primitivele sculptate (sculpties), mesh-ruile, texturile pentru haine saualte obiecte, precum i animaii i gesturi pot fi create folosind software -ul extern i importate, toateaceste opiuni necesit competene extinse de pro gramare care fac Second Life o aplicaiecomplex, cel mai bine experimentat de oameni cu cunotine de calculator peste-medie. Termeniide utilizare Second Lifeprevd c utilizatorii pstreaz drepturile de autor p entru orice con inut pecare l creeaz, iar serverul i clientul ofer cteva funcii simple pentru a gestiona aceste drepturidigitale. [25]

    2.7 Moodle

    Moodle este o platform popular de eLearning distribuit gratuit n reg im Open Source.Acronimul MOODLE desemneaz titlu l 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

    platforme i 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 dedate compatibil. Recomandat este folosirea unui server web Apache i MySQL ca sistem degestiune a bazelor de date. Bineneles, Moodle poate fi instalat cu uurin i pe o platform de webhosting ntruct majoritatea ndeplinesc chiar i pentru un plan minim toate cerinele necesare.

    Platforma Moodle furnizeaz o serie de instrumente standard intuitive i foarte uor defolosit prentru a sprijini nvarea online prin descoperire, documentare i cercetare, asigurnd astfelun mediu virual care s permit interaciunea colaborativ a studenilor ca un act de instruire desine stttor sau complementar in struirii tradiionale. Module ca teme, chat, forum, glosar, teste,resurse, chestionare, lecii i pagini wikiduc la ndeplinirea acestui scop avnd n cetru utilizatorul.

    Moodle se configureaz i se administreaz uor, ofer management pentru cursurileonline, pentru utilizatorii nregistrai i pentru diverse mbuntiri i plugin-uri care permitadugarea 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 corespunztorcare prezint facilitile necesare, puse la dispoziie rolului respectiv.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    14/45

    Integrare sistem educa ional 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 unortermeni 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 , rota ie , vitez etc. Are responsabilitatea de a oferi

    un proxy pentru configura ia fizic care poate fi transmis catre physics engine. Orice entitate este obligat s implementeze toate aceste concepte , indiferentde 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 entit i , plus conceptele specifice

    protocolului LLUDP. n plus , implementeaz unele concepte generice precum script container.

    Mesh Aceasta se refer la orice entitate ce cuprinde informa ii geometrice , n locul

    instruciunilor procedurale de generare geometric .

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    15/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    15

    n funcie de implementare , un mesh poate implementa sau nu interfe eaditionale precum script container i concepte LLUDP.

    Avatar / Prezen a 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 celegenerate de scen .

    Datorit numrului ridicat de evenimente prezente n cadrul unei scene,acestea sunt divizate n subseturi , care pot fi implementate la alegere de c treprezen a scenica.

    Agent Este reprezentarea intern a unui client care se conecteaz la simulare prin

    intermediul re elei. Acesta poate fi : un ultilizator conectat prin intermediul unui viewer

    un motor de c utare care dore te achiziia unor date un proxy care controleaz mai multe conexiuni un motor extern care transmite date c tre simulare i primete date de la

    aceasta Agenii sunt identificai prin intermediul protocolului de comunica ie pe care l

    implementeaz . Client

    Identificat prin orice program care se conecteaz la un server OpenSim prinintermediul unei re ele.

    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 datelesale.

    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 dispoziiedate 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 fiec rei 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 noti e ce pot fi transferate laceilali utilizatori.

    Rez ( verb ) Reprezint aciunea de a instan ia 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 ostabileste un viewer cu regiunea respectiv .

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    16/45

    Integrare sistem educa ional 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 rela ie unu la unu. Conine toate obiectele 3D, ce pot fi prezen e scenice (ScenePresences) sau

    grupuri de obiecte (SceneObjectGroups). O prezen scenic poate fireprezentat de un avatar, daca este de tip root.

    Grupurile de obiecte (clasa SceneObjectGroups) constau dintr-un numar depri de obiecte, reprezentate de clasa SceneObjectParts.

    Simulator Un program care administreaz mai multe regiuni.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    17/45

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    18/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    18

    n modul de Grid serviciile de date nu sunt parte component a procesului ce se ocup curegiunile. 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 aleprocesului, 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 pemaini 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 anumiteresponsabiliti:

    UserServer Responsabil cu autentificarea utilizatorului n grid Creeaz un identificator de sesiune pentru client care poate fi fo losit pentru

    autentificarea cererilor ctre alte servere din acelai grid i asociaz acestidentificator cu un UUID (poate implica autentificare criptografic,autentificare OpenID sau metoda curent cu autentificare prin ResidentName/Password).

    GridServer Responsabil cu autentificarea regiunilor. Deoarece gridul este bidimensional i

    fiecare regiune are coordonatele X,Y proprii, este necesar s fie asigurat c, nparticular, orice coordonat X,Y este asignat corect.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    19/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    19

    Implementarea curent a se bazeaz pe o autentificare mutual (fiecare partese asigur de identitatea celeilalte) cu serverele de regiuni, bazat pe o schem

    dual, secret i partajat ntre cele dou entiti (denumit incomingpassword 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 unanou, cu schimbrile dorite, asociindu-se un nou UUID, resursa vechermnnd 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 carenu mai alte foldere, fac legtur direct la UUID-ul, tipul i numele descriptiv alunei 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 pstreazmesajele 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 foloseteresursele serverului de OpenSim.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    20/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    20

    Fig. 6. Schema serverului de OpenSim

    n detaliu, OpenSim ofer o arhitectur stratificat pe componente, care asigur separareafuncionalitilor la nivel de simulator de cele de interoperabilitate. ncapsularea i abstractizareasunt folosite pentru a s usine modularitatea i extensibilitatea. Cele mai multe servicii de baz ientiti 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 dezvoltacapabiliti noi. Totui, codul este destul de stufos, ntruct sistemul din spatele OpenSim a fostdefinit iterativ. Anumit funcii de baz sunt bine definite, dar interoperabilitatea subsistemuluicontinu s fie dezvoltat.

    Simulatorul i membrii acestuia sunt referii ca i regiune, n timp ce o colecie de regiuni ifuncionalitile aferente sunt considerate un grid. Setul de o regiune, un grid i logica combinat desuport constituie o instan a aplicaiei.

    OpenSim a fost dezvoltat pe cadru Mono pentru a oferi portabilitate ntre mediile int defolosire, i de a valorifica facilitile oferite de .NET. Framework-ul Mono a fost dezvoltat de MonoProject ca o alternativ open -source la soluia Microsoft .NET. Mono suportmajoritatea sistemelorde operare populare precum i diverse arhitecturi hardware, i furnizeaz majoritatea funciilor ifacilitilor oferite de framework-ul .NET.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    21/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    21

    n termeni de design, OpenSim a fost creat pentru a oferi un simulator open-sourcecompatibil cu clienii de Second Life. La baz, OpenSim extindebiblioteca 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 cti pentru client, tipuri de date generale i diferite clase ajuttoare.

    OpenSim se folosete de abstractizare pentru a izola funcionalitatea i pentru a asigura ointerfa comun. Framework -ul (OpenSim.Framework) prezint multe interfee pentru serviciileateptate. n arhitectura .NET, interfeele pot fi puse n aplicare de ctre un furnizor, nregistratdinamic, i utilizate de funciile de client. Aceste interfee ncapsuleaz plugin-uri care oferfuncionalitate att de baz ct i definit de utilizator. Aceast funcionalitate este furnizat deMono.Addins. Pentru a defini o funcionalitate nou, toate clasele definite de utilizator sunt mai nti abstractizate ntr-o per eche nterfa/implementare, i apoi se adaug metadatele deasamblare (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 pentrudisponibilitate cuprinztoare, o ncercare recent se face pentru a ngloba eficient funcionaliti prininterfee consolidate. n termeni de manipulare a datelor, multe interaciuni ntre claseabstractizea z 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 stratde proiectare OpenSim include module ce implementeaz funcionaliti. Aceste module sunt deasemenea menionate ca assemblies sau plugin-uri, n funcie de context. Modularitatea esteimplementat i susinut de ctre fiierele de configurare.

    La nivel de execuie, OpenSim folosete fiiere de configurare pentru a defini parametrii desistem necesari pentru pornirea i funcionarea instanei . Fiierul central este OpenSim.ini, situat ndirectorul /bin. Acest fiier conine cea mai mare parte di n constrngerile de configurare asistemului, include parametrii de grid, parametri de module , precum i parametrii fizic, printrealtele. 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 acache-ului.

    Regiunea OpenSim este, n esen, un simulator de fizic, un motor de script -uri locale, iun manager de client. La baza server ului de regiune este o scen, care este o clasa de esenial pentru simulare. n acest moment, fiecare regiune are exact o scen. Scena motene te clasaabstract SceneBase, care extinde interfaa Iscene. Clasa SceneBase conine funcionaliti abstractepentru a manipula module de regiune. Acea sta conine, de asemenea, membrii de baz pentrugestionarea clientului, managementul evenimentelor, permisiuni, informaii despre regiuni (numeetc), i module de regiune.

    Scena augmenteaz clasa SceneBase cu membri i functionalitate pentru a crea unsimulator atomic. Cmpurile includ membrii de fizic bazat pe grafuri , manevrarea vecinilor,constrngerile logice, parametrii sistemului, un manager de stocare, un sistem de ncrcare amodulelor, un modul de gestionare a autentific rilor, un manager de comunicare, o gril de serviciide 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 modulde dialog, un modul de teleportare, un modu l de capabiliti, precum i argumente configurare ascenei fizice i trimiteri la unele dintre directoarele i membrii de baz a SceneBase.

    Clasa SceneGraph (OpenSim.Region.Framework.SceneGraph)furnizeaz clasei SceneBaseun obiect elementar bazat pe grafuri pentru manipularea componentelor matematice. ClasaSceneGraph 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 ncadrareQuadTree. Funcionalitatea oferit de aceast clas permite accesul Scenei la clasele care stau la

    http://www.openmetaverse.org/http://www.openmetaverse.org/http://www.openmetaverse.org/http://www.openmetaverse.org/
  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    22/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    22

    baza claselor de fizic ntr-un mod uniform, cu ncuietori de sincronizare pentru a asiguraintegritatea.

    Una dintre componentele de baz ale scenei este Event Manager(OpenSim.Region.Framework.Scenes.EventManager). Acest manager de eveniment conineevenimente care sunt manipulate de scen, n calitate de editor. Module adaug funcionalitate laevenimente prin abonarea pe evenimentului int. Pentru abonare, modulele adauga funcia lorproprie ca un handler pentru a evenimentul ncapsulat delegat. Acest model permite multicasting laorice numr de handlere . Evenimentele definite n EventManager i sunt activate de ctre diversecomponente ale sistemului de scen . Evenimentele de baz sunt incluse pentru declanatoare importante, inclusiv itera i cadru individuale, manipularea de obiecte, schimbarea strii unui script,precum i alte evenimente critice.

    Clasa ScenePresence este obiectul rdcin ce reprezint un a vatar in scena. Acestaextinde 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 funcionalitateabstract . Clasa ScenePresence dezvolt aceast baz, cu un vizualizator de scena, controalescriptate, o textur, flag-uri booleene, constrngeri logice, extinderea informaiilor fizice, informaiidespre v iewer, referine legate de SceneObjectGroups, i suport de funcionalitate. Acea st clasare, de asemenea, o trimitere la interfaa client, permind interaciunea cu sfritul local alcircuitului clientului.

    Clasa SceneObjectGroup este o alt entitate ce implementeaz clasa EntityBase, i oferunitatea atomic pentru un obiect n lumea virtual. La baza clasei este un dicionar deSceneObjectParts, care reprezint primitivele individuale (prims) ale obiectului virtual. n plus fa deacest dicionar, clasa conine o parte/o primitiv rdcin, la care se face referire pentru a manipulaobiectul. Funcionalitatea este furnizat pentru a manipula fiecare component a obiectului ipentru 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 delume virtual.

    La nivel de regiune, module de regiune definesc entiti, manipuleaz colecii,ofer punctede extindere, i asigur comunicaia, printre alte multe func ii. Aplicaia obinuit de ncrcare amodulelor de regiuni ncarc asamblrile dintr-un director de baz i include toate clasele ceimplementeaz IregionModule, interfa obinuit pentru modulele de regiuni. Modulele de regiunesunt transmise la scena principal a simulat orului. Prin manipularea aceastei referin, mod ule potextinde funcionalitate .

    Stratul de grid al OpenSim este format din mai multe servere care ofer funcionalitateinterregional. Aceste servere sunt denumite n continuare "UGAIM" de baz, "UGAIM" provenindca prescurtare de la Utilizator, Grid, Active, Inventar i Mesaje.

    Definiia funcional pentru un grid OpenSim specific o singur instan din fiecare dintreserverele UGAIM, servind unul sau mai multe simulatoare de regiune. O instan de server gridpoate deservi mai multe griduri (de exemplu, pentru a asigura autentificarea obinuit autilizatorului), dar numai un serviciu este implementat n orice regiune dat .

    Iniial, ndezvoltarea OpenSim, serviciile de grid au fost definite de clase unice adaptate laproiectarea componentei necesare. OpenSim a fost conceput pentru a ncepe ntr-unul din cele doumoduri, independent(standalone)/ sandbox i n grid. n mod autonom(standalone), serviciile deUGAIM vor rula, alturi de regiuni, ntr-un singur executabil OpenSim.exe. n modul de grid, serviciilesunt ncapsulate n servere independente, care ruleaz n propriul lor proces. Ulterior, pachetulOpenSim a fost mbuntit cu interoperabilitatea reelei externe. Acest proiect este menionat caextensie 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

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    23/45

    Integrare sistem educa ional 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 dereea la simulatoare (chiar i n mod autonom , fcnd astfel gridurile standalone accesibile). Extensiaeste o prelu ngire similar a hyperlink-urillor de pe o pagin web, i se ocup de logica de control derutare a cererilor i a funciilor ntre un context local i cel de la distan.

    Serverele de grid includ un server de HTTPde baz, care permite manipularea de cereri irspunsuri. 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 primadat ncapsulat n BaseOpenSimServer (OpenSim.Framework.Servers),care adaug, de asemenea, o consola, un thread , i ali membri suplimentari. n modul de gridtradiional, 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 g rid, i serverele de mesagerie moten esc inte rfaa 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 deutilizator 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 peutilizator. Aceste module sunt implementate separat pentru a spori modularitatea , i de a folosi ncrcare dinamic (interfa a de nregistrare ), pentru a interaciona cu sistemul. Ar trebui remarcatfaptul c aceast versiune a serverului de utilizator nu utilizeaza sistemul de Mono.Addins, bazat peplugin-uripentru a extinde funcionalitatea.

    Funcionalitatea curent extinde o clas Main.cs n spaiul de nume. Aceast clasprincipal, OpenUser_Name, conine membri pentru un logger, o configuraie, un utilizator DBserviciu, un modul de aspect pentru avatar, un modul de prieteni pentru utilizator, un serviciu deautentificare, conectori pentru serviciul de mesaje (pentru deplasarea la serviciul de mesaje nserviciu de utilizator), un serviciu de informatii grid, un modul de comand pentru consol , un modulde creare de avatar, i un serviciu OpenID. Ca i n alte servere OpenSim, serverul pornete ca unserver de baz HTTP, la care mai apoi esteataat o consol.

    Serverul de reea ofer n prezent funcionalitate interregional pentru simulator. Clasaprincipal este OpenSim.Grid.UserServer.GridServerBase, i pentru funcionarea standalone acestlucru este nfurat ntr -un fiier de program, cu o clas Main. Scopul principal al serverului grid estede a oferi servicii obnuite de manipulare n regiune , inclusiv cererile de informaii, conectare /deconectare, precum i mesajele interregionale.

    Ca i alte serviciigrid de baz, funcionalitatea este implementat ntr -un format modular,cu module pentru Server Grid de baz (GridServerPlugin),Grid DB Service (stocarea informaiilor deregiune), servicii de mesagerie, plugin-uri de manipulare i de protocol (GridRestModule iGridXmlRpcModule). GridServerPlugin poate fi gndit ca modulul principal de servicii grid, i coninereferine la restul serviciilor menionate anterior , la configurare, la consol,i la servicii gridde 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 deactive 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 detergere nu este definit). Plugin-ul de baz cu serverul este furnizorul de depozitare (unul careimplementeaz interfaa IAssetDataPlugin). Acest furnizor de stocare este setat n configuraiaOpenSim.ini principal.

    Membrii suplimentari includ AssetLoaderFileSystem (definit nOpenSim.Framework.AssetLoader.Filesystem i implementeaz interfaa IassetLoader), folosit

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    24/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    24

    pentru ncrcare de active implicite n format xml de la o locaie n fiier (la pornire). Alte completriinclud tratarea stream-urilor pentru metode le de get i post (definite n

    OpenSim.Framework.Servers.*AssetServerHandlers.). Avnd n vedere natura specific a acestuiserver de active, plugin-urile nu sunt uor de integrat n acesta (cu nici un mecanism de includereclar).

    Serverul inventar ofer servicii de inventar la solicitarea clienilor. Clasa de baz n aceastversiune este OpenInventory_Main, aflat n OpenSim.Grid.InventoryServer. Aceast clas principal conine configurarea serviciului, precum i configurarea consolei, referine principale, i configurareaserverului HTTP. Codul principal este n extensiea GridInventoryService. Serviciul de inventar, nesen, este configuraie ierarhic de regsire ntr-un dosar. Cererile includ obinerea inventarul unuiutilizator, actualizarea / mutarea / curarea / tergerea de foldere i de elemente stocate. naintede fiecare cerere, serviciul compar autentificarea cu cache-ul sesiunii locale, pentru a verificapermisiunile (dac nu exist nimic n cache, trimite cererea la serverul de utilizator, i adaug dac

    este gsit) .Serverul de mesaje se ocup de comunicare a ntre utilizatori, att inworld ct i pe planextern. 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 deprotocoale populare de chat, inclusiv IRC. Serverul de mesaje este n proces de migrare spreinteriorul altor servere de grid de baz. Ca atare, serverul de mesaje nu este critic pentru rulareaOpenSim.

    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 continudezvoltare i mbuntire. Exist o baz de colaboratori pe diferite componente i bug -uri, i multmai 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 3DMMO. Astfel, platforma

    Suport medii online 3D, multi-user ce integreaz de la unul pn la mii desimulatoare.

    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# iVB.NET.

    Asigur capacitatea nelimita t de a personaliza aplicaiile virtuale prin folosirea demodule 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)

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    25/45

    Integrare sistem educa ional 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 alteconfigurri din directorul config-include . Informaii despre setri se gsesc detaliate i comentatechiar n fiier sau n OpenSim.ini.example.

    Este posibil ca fiierul s fie distribuit n mai multe pri atunci cnd se dorete rularea unorprocese 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 ipoate fi utilizat, fr a necesita nici o configurare suplimentar. Aceasta este n ceamai mare parte destinat unei instalr i 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 ataament elor).

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    26/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    26

    MySQL (implementat complet cu toate caracteristicile) - Aceasta este baza de daterecomandat pentru orice utilizare dincolo de experimentare sau mici aplica ii de sine

    stttoare. Versiunea minima de MySQL este 5.1. MSSQL (menint) - persisten a pentru unele caracteristici OpenSimulator recente nueste 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 serverului2. 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 fi ierul StandaloneCommon.ini.example nStandaloneCommon.ini. Acest lucru asigur configurarea serviciilor de date folosite nmodul Standalone .

    5. n seciunea [Architecture] a fiierului OpenSim.ini, aproape de sfritul acestuia, sedecomentez linia ce con ine Stanalone.ini. Pentru a decomenta o linie de cod, seterge 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 lan sa 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 (Windows7 i Windows Server 2008 au dejainstalat acest lucru); versiunea 4.0 nu este suportat nc

    Versiunile mai vechi, 2000 sau NT nu sunt suportate, iar Windows XP trebuie saib 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 trebuierulat 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 distribu ii:

    Ubuntu Debian (versiunea 5 sau mai nou) Distribuii RedHat

    Dac rulm OpenSimulator pentru prima dat, vor trebui introduse mai multe configurriiniiale, la consola, care vor defini o singur regiune , un domeniu i un utilizator. Opiunile deconfigurare pe care le introducem vor fi scrise n fiierul bin/Regions/Regions.ini, pe care le putemulterior 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.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    27/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    27

    Region Location Aceasta este locaia regiunii n grid. n modulStandalone se poatelsa valoarea implicit (1000, 1000). Totusi, trebuie s avem grij ca atunci cnd

    adaugm alte regiuni ele s aib coordinate diferite (de exemplu 1000, 1001). nOpenSimulator 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 aoricrei interfete de reea). Dac se vrea restricionarea conexiunilor UDP la o singurinterfa 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 Seco nd Lifespre 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 exemplu192.168.1.2). Acest lucru este util att timp ct ne conectm la server din interiorulreelei locale. Dac vrem s ne conectm de pe internet, ar trebui s setm adresa IPextern a routerului.

    Allow alternate ports Este o configurare care nc se experimenteaz. Trebuie lsatvaloarea 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 es te

    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 ini ials modifice configurrile din simulator pentru regiuni i pentru ntregul domeniu. Se pot defini i aliutilizatori folosind comenzi de consola (create user).

    Conectarea la OpenSimulator se face prin intermediul clientului, la care se adaug civaparametri de rulare. Astfel, putem rula un client att din consol cu parametrul de loginuri urmat deadresa i portul serverului, ct i alternd direct shortcut -ul clientului, adugnd parametrul laseciunea Target a acestuia. De exemplu, pentru a ne conecta cu un client la un server rulnd localpe portul implicit, vom folosi parametrul -loginuri http://127.0.0.1:9000 , iar pentru a ne conecta laun server care ruleaz pe internet putem folosi att adresa IP ct i un nume de domeniu, dacacesta este configurat, folosind -loginuri http://3d.pub.ro:9000 .

    Rularea OpenSimulator n modul de grid este mult mai complicat dect rularea ca oinstan independent. n loc de a rula tot ul 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. Acestlucru permite mai multe instane simulator OpenSim.exe de a utiliza aceleai activele i date deinventar.

    n primul rnd trebuie s configurm o instant de ROBUST. Pentru aceasta vom urma maimuli pai:

    http://127.0.0.1:9000/http://127.0.0.1:9000/http://127.0.0.1:9000/http://3d.pub.ro:9000/http://3d.pub.ro:9000/http://3d.pub.ro:9000/http://3d.pub.ro:9000/http://127.0.0.1:9000/
  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    28/45

    Integrare sistem educa ional 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, singurulmod 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 pasulurmtor.

    4. Fiecare regiune trebui s aparin unui domeniu i fiecare domeniu trebui s aib unutilizator 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 configurrilepentru grid (Grid.ini).

    De asemenea, n fiierul bin/GridCommon.ini vom observa valori default pentru diferiteservicii cum ar fi http://myassetserver.com:8003 sau http://myinventoryserver.com:8003 . Acesteatrebuie schimbate astfel nct s directeze ctre adresa instanei de ROBUST. Spre exemplu, dacrulm ROBUST pe o main local cu adresa IP 192.168.2.1 vom modif ica AssetServerURI setndAssetServerURI ="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 neasigur 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 pute m s ne conectm cu un client. De menionat este c adresa i portulcare 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 (ntructprocesul de autentificare transmite simulatorului s atepte avatarul, comunic clientului adresasimulatorului de regiune, iar apoi clientul comunic direct cu simulatorul de regiune, adic instanade 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 fiaccesate cu un client (viewer) SL obinuit. Cu toate acestea, OpenSimulator nu este nici o clon deserver Second Life, i nici nu are aceasta ca obiectiv. Dimpotriv, OpenSimulator nu are suportpentru multe din car acteristicile specifice ale jocului Second Life, n timp ce se urmresc direciiinovatoare 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, iarclienii de Second Life i implicit OpenSim, ofer o interfa intuitiv i uor de realizat pentru a aveaacces la aceast suit de faciliti.

    Astfel, spre exemplu n clientul original de Second Life, vom avea mai multe seciuni imeniuri. Bara din partea de jos a ecranului SL ofer instrumentele cele mai frecvent utilizate, caresunt eseniale pentru noi utilizatori. Acesta este modul n care bara de unelte de jos apare pe ecran:

    http://myassetserver.com:8003/http://myassetserver.com:8003/http://myinventoryserver.com:8003/http://myinventoryserver.com:8003/http://myinventoryserver.com:8003/http://192.168.1.2:8003/http://192.168.1.2:8003/http://192.168.1.2:8003/http://www.secondlifegrid.net/http://www.secondlifegrid.net/http://www.secondlifegrid.net/http://www.secondlifegrid.net/http://192.168.1.2:8003/http://myinventoryserver.com:8003/http://myassetserver.com:8003/
  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    29/45

    Integrare sistem educa ional 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 cupersonaje 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 poatecomunica i prin voce, folosind un microfon si modulul de Voice Chat. Pentru a putea folosi aceastfacilitate, ea trebuie verificat i activat din Preferine. nceperea unei conversaii n acest mod seface folosind butonul Speak.

    Fcnd clic pe butonul Destinations se va deschide un meniu care ofer o selecie dedestinaii 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 pers oane cu care s- a luat deja contact i care auacceptat 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

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    30/45

    Integrare sistem educa ional 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 unuladiional 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

    VoiceSettings

    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 barade 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

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    31/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    31

    hart indic prezena altor utilizatori. Navigarea n harta se face cu mouse -ul i prin funcia de zoomdisponibil. 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 oricepunct 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 distribuireade coninut Web -based n interiorul simulatorului ntr- un mod foarte uor i intuitiv. Aceastcaracteristic 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 careinteracionm 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 Buildpermite i furnizeaz o serie larg de funcionaliti. Astfel, sunt disponibile o multitudine de tipuride primitive din care se pot alege , se aduga i personaliza texturi pe obiecte, se pot aplicatransformri n spaiu etc. Mai mult, fiecare obiect are un inventar propriu n care se pot aduga alteobiecte sau scripturi i permite setarea de permisiuni asupra acestora. Nu n ultimul rnd utilitarulpune la dispoziie i mijloace de alterare a terenului.

    Scripturile sunt i ele o parte foarte important ntruct acestea asigur modificridinamice n timp real, ele fiind compilate i rulate direct n client.

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    32/45

    Integrare sistem educa ional online cu spaiu virtual 3D MMO

    32

    4. Experimente

    Pentru a ajunge la ndeplinirea scopului proiectului, accea de a crea un prototip ce asigurfuncii educaionale, au trebuit urmai mai muli pai, unii dintre ei aflndu-se nc n dezvoltare iextindere.

    4.1 Campusul Universitii Politehnica

    Pentru a ndeplini cerina de a simula un mediu real, trebuie realizat o c opie a campusuluiuniversitii, 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 dinsimulator i am stabilit mai apoi fii de nlimeaproximativ dup cum se poate observa i n figurace urmeaz .

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    33/45

    Integrare sistem educa ional 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 aterenurilor. Pentru acest lucru am folosit L3DT, care genereaz un heightmap i care este uor deutilizat. Ultima ajustare a fost s corectez fiile stric orizontale, evalund deformaiile reale aleterenului 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 facefoarte u or printr-o comand de consol .

  • 8/12/2019 Proiect Licenta Automatica Gradinaru v Alexandru 19931

    34/45

    Integrare sistem educa ional 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 trebuieluat n serios i realizat ct mai autentic. n cazul nostru, spaiul trebuie s fie o replic ct mai fidela campusului Politehnicii, pentru a asigura realismul necesar, oferind utilizatorilor o experiencaptivant .

    C