Return to search

A WebGL-based virtual world client on a web browser

The popularity of 3D virtual worlds has increased a lot in recent years and they are becoming essential enablers for providing interactive collaboration methods for people. Virtual worlds are also making their way in the real world with the help of augmented reality technologies. Currently, many service providers are trying to make it easier for users to access their virtual worlds. However, accessing a virtual world typically requires installing a separate client application that needs a different configuration for each device platform and operating system. Installing a client is a nuisance for end-users and developing and supporting client configurations is costly for service providers hindering the adoption of 3D virtual worlds.

3D Web technologies and standards have been evolving rapidly allowing software developers to create 3D virtual worlds that can be viewed with a web browser. However, many of these technologies require the end-user to install specific plug-in software into their web browser before the technology can be utilised. Using the new WebGL technology, an interactive 3D environment can be used on a cross-platform supported web browser without installing any plug-ins. In this thesis, a system architecture and a prototype implementation of a WebGL-based virtual world client are presented to provide a plug-in free, readily extensible and open source web client for 3D virtual worlds.

The performance of the web client was measured in terms of CPU load, memory consumption, frame rate and 3D scene processing time on a desktop PC and on a high-end tablet device. The performance evaluation results show that the web client has good future prospects on desktop PCs, but more work needs to be done to achieve good performance on tablet devices.

A publication, "A Virtual World Web Client Utilizing an Entity-Component Model", based on this thesis was written and it was accepted in the NGMAST 2013 conference. Additionally, the effect of network quality on the performance and the user experience of the web client will be researched in the near future. This thesis has successfully contributed to research in the field of 3D Web and the implementation of the web client has served as a proof of concept affecting the technological choices of related third party projects. The implemented web client can be used on various platforms with web browsers that support WebGL and WebSocket technologies, thus making it available for many users. Also, the web client can be extended easily due the modular architecture and the utilisation of the Entity-Component model on the management of the 3D scene hierarchy. / 3D-virtuaalimaailmojen suosio on kasvanut paljon viime vuosina ja niistä on tulossa tärkeitä työkaluja ihmisten väliselle interaktiiviselle yhteistyölle. Virtuaalimaailmat ovat yhtymässä myös reaalimaailmaan lisätyn todellisuuden teknologioiden avulla. Monet palveluntarjoajat yrittävät nykyään helpottaa käyttäjien pääsyä virtuaalimaailmoihin. Virtuaalimaailmoihin päästäkseen käyttäjä joutuu yleensä asentamaan erillisen asiakasohjelman, joka joudutaan erikseen räätälöimään jokaiselle laitealustalle ja käyttöjärjestelmälle sopivaksi. Asiakasohjelman asentaminen on hankalaa käyttäjille ja asiakasohjelmien eri käyttöjärjestelmäkohtaisten versioiden ylläpito on kallista palveluntarjoajille. Tämä vaikeuttaa 3D-virtuaalimaailmojen omaksumista.

3D Web -teknologiat ja standardit ovat kehittyneet nopeasti ja helpottavat kehittäjiä luomaan 3D-virtuaalimaailmoja joita voidaan katsella verkkoselaimella. Käyttäjän täytyy kuitenkin asentaa erillinen lisäohjelma verkkoselaimeen ennen kuin teknologiaa voi käyttää. Käyttämällä uutta WebGL-teknologiaa, interaktiivista 3D-maailmaa voidaan käyttää monella alustalla toimivalla verkkoselaimella joutumatta asentamaan erillisiä lisäohjelmia. Tässä työssä esitellään järjestelmäarkkitehtuuri ja prototyyppi WebGL-pohjaisesta asiakasohjelmasta 3D-virtuaalimaailmoille, joka on helposti laajennettava, ei tarvitse ylimääräisiä lisäohjelmia ja on lähdekoodiltaan avoin.

Web-asiakasohjelman suorituskykyä arvioitiin mittaamalla ohjelman aiheuttama CPU-kuorma, muistinkulutus, kuvataajuus ja 3D-näkymän prosessointiin kuluva aika pöytätietokoneella ja tehokkaalla taulutietokoneella. Mittaustulokset osoittavat, että web-asiakasohjelmalla on hyvät tulevaisuudennäkymät pöytätietokoneilla, mutta lisää kehitystyötä on tehtävä hyvän suorituskyvyn saavuttamiseksi taulutietokoneilla.

Tämän työn pohjalta tehty julkaisu, "A Virtual World Web Client Utilizing An Entity-Component Model", on hyväksytty NGMAST 2013 -konferenssiin. Lisäksi, verkon laadun vaikutusta web-asiakasohjelman suorituskykyyn ja käyttökokemukseen tullaan tutkimaan lähitulevaisuudessa. Tämä työ on onnistuneesti kontribuoinut 3D Web:iin liittyvään tutkimukseen ja on vaikuttanut teknologioiden valintoihin työhön liittyvien kolmannen osapuolen projektien piirissä. Toteutettua asiakasohjelmaa voidaan käyttää monilla alustoilla verkkoselaimilla, jotka tukevat WebGL- ja WebSocket-teknologioita, mikä tekee ohjelmasta helposti saavutettavan useille käyttäjille. Toteutus on myös helposti laajennettavissa sen modulaarisen rakenteen ja 3D-näkymän hierarkian hallintaan käytetyn entiteetti-komponentti -mallin takia.

Identiferoai:union.ndltd.org:oulo.fi/oai:oulu.fi:nbnfioulu-201312062022
Date11 December 2013
CreatorsDahl, T. (Toni)
PublisherUniversity of Oulu
Source SetsUniversity of Oulu
LanguageEnglish
Detected LanguageFinnish
Typeinfo:eu-repo/semantics/masterThesis, info:eu-repo/semantics/publishedVersion
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess, © Toni Dahl, 2013

Page generated in 0.093 seconds