Törmäysten havaitseminen kolmiulotteisessa avaruudessa selainympäristössä
Tiikkaja, Antero (2011)
Tiikkaja, Antero
2011
Tietotekniikan koulutusohjelma
Tieto- ja sähkötekniikan tiedekunta - Faculty of Computing and Electrical Engineering
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2011-11-09
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tty-2011112114901
https://urn.fi/URN:NBN:fi:tty-2011112114901
Tiivistelmä
Webin kehittyminen on mahdollistanut yhä monipuolisemman sisällön esittämisen webissä ja myös kolmiulotteinen grafiikka on siirtynyt yhä enemmän webiin. Tällä hetkellä WebGL mahdollistaa kolmiulotteisen sisällön lisäämisen ja näyttämisen ilman erikseen asennettavia plugin-komponentteja ja tarjoaa siten hyvän lähtökohdan kolmiulotteisen sisällön esittämiseksi webissä. Kehityksen jatkuessa web kilpaillee varteenotettavana sovellusalustana perinteisten sovellusalustojen kanssa.
Törmäysten havaitseminen on monien sovellusalueiden tärkeä osa, sillä ilman törmäystarkastusta useiden sovellusten käyttäminen ei olisi mielekästä. Törmäysten havaitseminen nousee erityisen keskeiseen asemaan interaktiivisuutta vaativissa sovelluksissa, koska törmäysten havaitseminen mahdollistaa vuorovaikutuksen käyttäjän ja virtuaalisen ympäristön välillä.
Työn ongelmana oli, miten selaimet soveltuvat kolmiulotteisen sisällön esittämiseen törmäystarkastelun näkökulmasta ja miten tähän tarkoitukseen luodaan kirjasto JavaScript-kielellä. Kirjastolle asetettiin ohjelmistovaatimuksiksi käytön helppous, siirrettävyys, laajennettavuus ja suorituskyky. Toteutetun kirjaston toimintaa testattiin WebGL:llä toteutetulla testisovelluksella, jota ajettiin eri selaimilla. Testeissä saatujen tulosten perusteella tehtiin päätelmiä luodun kirjaston toiminnasta, käytetyistä selaimista ja web-sovelluskehitysprosessista.
Kirjaston toimintaa testattiin eri selaimilla ja selainten välillä havaittiin selkeitä suorituskykyeroja. Havaintojen perusteella päädyttiin johtopäätöksiin, joiden mukaan web-sovelluskehityksessä sovellusten testaaminen eri selaimilla nousee tärkeään asemaan, koska sovelluksen toiminta voi hidastua huomattavasti selaimesta riippuen ja sovelluksen interaktiivinen ja reaaliaikainen luonne voi kärsiä. Lisäksi tehtiin johtopäätöksiä dokumentoinnin roolista web-sovelluskehityksessä. Web-sovelluskehityksessä käytettävät dynaamiset ohjelmointikielet vaativat hyvän dokumentaation rajapintamäärittelyjen tueksi, jotta toteutettavan kirjaston rajapinnan vaatimat tietotyypit voidaan ilmaista selkeästi kirjaston käyttäjälle ja siten ohjata käyttäjää kirjaston käytössä.
Toteutetun kirjaston arvioinnissa havaittiin, että kirjasto soveltuu hyvin törmäysten havaitsemiseen selainympäristössä, ja kirjaston toteutus vastaa hyvin kirjastolle asetettuja ohjelmistovaatimuksia. /Kir11
Törmäysten havaitseminen on monien sovellusalueiden tärkeä osa, sillä ilman törmäystarkastusta useiden sovellusten käyttäminen ei olisi mielekästä. Törmäysten havaitseminen nousee erityisen keskeiseen asemaan interaktiivisuutta vaativissa sovelluksissa, koska törmäysten havaitseminen mahdollistaa vuorovaikutuksen käyttäjän ja virtuaalisen ympäristön välillä.
Työn ongelmana oli, miten selaimet soveltuvat kolmiulotteisen sisällön esittämiseen törmäystarkastelun näkökulmasta ja miten tähän tarkoitukseen luodaan kirjasto JavaScript-kielellä. Kirjastolle asetettiin ohjelmistovaatimuksiksi käytön helppous, siirrettävyys, laajennettavuus ja suorituskyky. Toteutetun kirjaston toimintaa testattiin WebGL:llä toteutetulla testisovelluksella, jota ajettiin eri selaimilla. Testeissä saatujen tulosten perusteella tehtiin päätelmiä luodun kirjaston toiminnasta, käytetyistä selaimista ja web-sovelluskehitysprosessista.
Kirjaston toimintaa testattiin eri selaimilla ja selainten välillä havaittiin selkeitä suorituskykyeroja. Havaintojen perusteella päädyttiin johtopäätöksiin, joiden mukaan web-sovelluskehityksessä sovellusten testaaminen eri selaimilla nousee tärkeään asemaan, koska sovelluksen toiminta voi hidastua huomattavasti selaimesta riippuen ja sovelluksen interaktiivinen ja reaaliaikainen luonne voi kärsiä. Lisäksi tehtiin johtopäätöksiä dokumentoinnin roolista web-sovelluskehityksessä. Web-sovelluskehityksessä käytettävät dynaamiset ohjelmointikielet vaativat hyvän dokumentaation rajapintamäärittelyjen tueksi, jotta toteutettavan kirjaston rajapinnan vaatimat tietotyypit voidaan ilmaista selkeästi kirjaston käyttäjälle ja siten ohjata käyttäjää kirjaston käytössä.
Toteutetun kirjaston arvioinnissa havaittiin, että kirjasto soveltuu hyvin törmäysten havaitsemiseen selainympäristössä, ja kirjaston toteutus vastaa hyvin kirjastolle asetettuja ohjelmistovaatimuksia. /Kir11