haku: @instructor Kajastila, Raine / yhteensä: 4
viite: 3 / 4
Tekijä:Ahvenniemi, Johannes
Työn nimi:Alustariippumaton GPU-renderöinti yleisimmillä selainalustoilla
Crossplatform GPU-rendering on the most common browser platforms
Julkaisutyyppi:Diplomityö
Julkaisuvuosi:2014
Sivut:64      Kieli:   fin
Koulu/Laitos/Osasto:Perustieteiden korkeakoulu
Oppiaine:Tietokoneverkot   (T-110)
Valvoja:Hämäläinen, Perttu
Ohjaaja:Kajastila, Raine
Elektroninen julkaisu: http://urn.fi/URN:NBN:fi:aalto-201507013715
OEVS:
Sähköinen arkistokappale on luettavissa Aalto Thesis Databasen kautta.
Ohje

Digitaalisten opinnäytteiden lukeminen Aalto-yliopiston Harald Herlin -oppimiskeskuksen suljetussa verkossa

Oppimiskeskuksen suljetussa verkossa voi lukea sellaisia digitaalisia ja digitoituja opinnäytteitä, joille ei ole saatu julkaisulupaa avoimessa verkossa.

Oppimiskeskuksen yhteystiedot ja aukioloajat: https://learningcentre.aalto.fi/fi/harald-herlin-oppimiskeskus/

Opinnäytteitä voi lukea Oppimiskeskuksen asiakaskoneilla, joita löytyy kaikista kerroksista.

Kirjautuminen asiakaskoneille

  • Aalto-yliopistolaiset kirjautuvat asiakaskoneille Aalto-tunnuksella ja salasanalla.
  • Muut asiakkaat kirjautuvat asiakaskoneille yhteistunnuksilla.

Opinnäytteen avaaminen

  • Asiakaskoneiden työpöydältä löytyy kuvake:

    Aalto Thesis Database

  • Kuvaketta klikkaamalla pääset hakemaan ja avaamaan etsimäsi opinnäytteen Aaltodoc-tietokannasta. Opinnäytetiedosto löytyy klikkaamalla viitetietojen OEV- tai OEVS-kentän linkkiä.

Opinnäytteen lukeminen

  • Opinnäytettä voi lukea asiakaskoneen ruudulta tai sen voi tulostaa paperille.
  • Opinnäytetiedostoa ei voi tallentaa muistitikulle tai lähettää sähköpostilla.
  • Opinnäytetiedoston sisältöä ei voi kopioida.
  • Opinnäytetiedostoa ei voi muokata.

Opinnäytteen tulostus

  • Opinnäytteen voi tulostaa itselleen henkilökohtaiseen opiskelu- ja tutkimuskäyttöön.
  • Aalto-yliopiston opiskelijat ja henkilökunta voivat tulostaa mustavalkotulosteita Oppimiskeskuksen SecurePrint-laitteille, kun tietokoneelle kirjaudutaan omilla Aalto-tunnuksilla. Väritulostus on mahdollista asiakaspalvelupisteen tulostimelle u90203-psc3. Väritulostaminen on maksullista Aalto-yliopiston opiskelijoille ja henkilökunnalle.
  • Ulkopuoliset asiakkaat voivat tulostaa mustavalko- ja väritulosteita Oppimiskeskuksen asiakaspalvelupisteen tulostimelle u90203-psc3. Tulostaminen on maksullista.
Sijainti:P1 Ark Aalto  1771   | Arkisto
Avainsanat:computer graphics
crossplatform
flash
html5
stage3d
webgl
haxe
tietokonegrafiikka
3D
alustariippumaton
Tiivistelmä (fin): Tässä työssä tutkittiin näytönohjain-, eli GPU-renderöintiä hyödyntävän sovelluksen alustariippumatonta kehitystä tämän hetken yleisimmille selainalustoille, eli Flashille ja HTML5:lle.
Tarkoituksena oli selvittää, onko tämä mahdollista.
Lisaksi arvioitiin esitettyä ratkaisua laadun ja ajankäytön kannalta.

Työssä esitellään renderöinnin peruskäsitteet ja käydään läpi alustariippumattoman ohjelmoinnin perustutkimusta.
Teknologioita vertaillaan niiden dokumentaation ja sovelluskehittäjien keskustelupalstojen pohjalta.

Alustariippumatonta kehitystä varten ehdotettiin uutta GPU-ohjelmointirajapintaa, joka toteutettiin Flashille ja HTML5:lle.
Flash-toteutus käyttää apunaan Stage3D-rajapintaa ja HTML5-toteutus WebGL-rajapintaa.
Ehdotettu rajapinta on Stage3D:n pelkistetty versio, joka toimii GLSL ES -sävyttimien kanssa.
Koska Stage3D tukee vain AGAL-sävyttimiä, GLSL ES -sävyttimet käännetään Flash-toteutuksessa gls12agalilla AGAL-sävyttimiksi.
Rajapintaa käytettiin Haxe-ohjelmointikielellä, joka voidaan kääntää HTML5- ja Flash-alustoille.

Toteutusta arvioitiin ohjelmoimalla koesovelluksia, joilla tarkasteltiin ratkaisun toimivuutta sekä mitattiin suoritustehoa.
Lisäksi läpi käydyn prosessin pohjalta arvioitiin valittujen teknologioiden vahvuuksia ja heikkouksia.
Havaitaan, että toteutus toimi visuaalisesti yksinkertaisissa tapauksissa.
Monimutkaisempi koe toimi täydellisesti vain HTML5-alustalla.
Suoritusteholtaan toteutus ei yltänyt natiivin Flash-sovelluksen tasolle.
Lisaksi teknologioissa havaittiin useita puutteita.

Johtopäätös oli, että toteutus on mahdollista.
Lopputulos oli kuitenkin vajaatoimintainen ja suoritusteholtaan heikko.
Tämän perusteella ainakaan kyseistä teknologiavalintaa ei voida suositella.
Toisaalta monia muita vaihtoehtoja teknologiaksi ei löytynyt.
Tiivistelmä (eng): This study was about utilizing GPU in cross platform development for the most common browser application platforms: HTML5 and Flash.
The intent was to find out if this can be done.
Also the solution's performance and cost-efficiency was evaluated.

In this thesis the basic concepts of rendering are explained and basic research for cross platform development is studied.
Technologies are compared based on their documentation and software developer forums.

A new GPU programming interface was proposed for cross platform development.
The interface was implemented for Flash using Stage3D and HTML5 using WebGL.
The proposed interface is a subset of the Stage3D interface with support for GLSL ES shaders.
Because Stage3D only supports AGAL shaders, GLSL ES shaders were compiled to AGAL with glsl2agal.
The interface was put to use with the Haxe programming language which can be compiled to both HTML5 and Flash.

The implementation was evaluated by programming applications to test the functionality and performance.
In addition a list of strengths and flaws are pointed out based on the experience from the process.

The solution worked visually in simple cases.
A more complex case worked as intended only on HTML5.
The performance was worse than that of a native Flash application.
Also several flaws were found in the technologies used.

The conclusion was that the task is feasible.
However, the implementation didn't work completely as intended and the performance was weak.
Based on this the chosen technologies can't be recommended.
On the other hand not many alternatives were found.
ED:2014-06-30
INSSI tietueen numero: 49349
+ lisää koriin
INSSI