Learning Centre

Crossplatform GPU-rendering on the most common browser platforms

 |  Login

Show simple item record

dc.contributor Aalto-yliopisto fi
dc.contributor Aalto University en
dc.contributor.advisor Kajastila, Raine
dc.contributor.author Ahvenniemi, Johannes
dc.date.accessioned 2015-07-01T08:15:33Z
dc.date.available 2015-07-01T08:15:33Z
dc.date.issued 2014
dc.identifier.uri https://aaltodoc.aalto.fi/handle/123456789/17073
dc.description.abstract 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. en
dc.description.abstract 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. fi
dc.format.extent 64 s.
dc.language.iso en en
dc.title Crossplatform GPU-rendering on the most common browser platforms en
dc.title Alustariippumaton GPU-renderöinti yleisimmillä selainalustoilla fi
dc.type G2 Pro gradu, diplomityö fi
dc.contributor.school Perustieteiden korkeakoulu fi
dc.contributor.school Perustieteiden korkeakoulu fi
dc.subject.keyword tietokonegrafiikka fi
dc.subject.keyword 3D fi
dc.subject.keyword alustariippumaton fi
dc.subject.keyword computer graphics en
dc.subject.keyword crossplatform en
dc.subject.keyword flash en
dc.subject.keyword html5 en
dc.subject.keyword stage3d en
dc.subject.keyword webgl en
dc.subject.keyword haxe en
dc.identifier.urn URN:NBN:fi:aalto-201507013715
dc.type.dcmitype text en
dc.programme.major Tietokoneverkot fi
dc.programme.mcode T-110
dc.type.ontasot Diplomityö fi
dc.type.ontasot Master's thesis en
dc.contributor.supervisor Hämäläinen, Perttu
local.aalto.openaccess no
local.aalto.digifolder Aalto_92285
dc.rights.accesslevel closedAccess
local.aalto.idinssi 49349
dc.type.publication masterThesis
dc.type.okm G2 Pro gradu, diplomityö


Files in this item

Files Size Format View

There are no open access files associated with this item.

This item appears in the following Collection(s)

Show simple item record

Search archive


Advanced Search

article-iconSubmit a publication

Browse