Efficient Parallel Particle Simulation and Rendering for Games

dc.contributorAalto-yliopistofi
dc.contributorAalto Universityen
dc.contributor.advisorKindermann, Roland
dc.contributor.authorPeltonen, Arttu
dc.contributor.schoolSähkötekniikan korkeakoulufi
dc.contributor.supervisorLehtinen, Jaakko
dc.date.accessioned2015-06-24T10:54:13Z
dc.date.available2015-06-24T10:54:13Z
dc.date.issued2015-06-10
dc.description.abstractParticles are a common method for representing different dynamic visual effects such as smoke and fire in real-time 3D computer graphics applications, especially in games. Given that these applications have strict performance constraints, performance of both the particle simulation engine and the renderer are essential. This master’s thesis presents an efficient implementation of a particle system for use in console or computer games. The main contribution of the thesis is a state-of-the-art tiled particle renderer implementation. The renderer is designed to perform well in the traditional worst-case scenarios for particles, such as smoke effects consisting of several particle layers. This is achieved by rendering particles in front-to-back depth order. In addition, to support a large number of simulated particles, a state-preserving particle simulation engine is implemented entirely on the graphics processing unit. The simulation engine is shown to be extremely efficient. The tiled renderer is demonstrated to limit rendering times in heavy overdraw scenarios while maintaining competitive performance with lighter particle workloads.en
dc.description.abstractPartikkelit ovat yleinen menetelmä dynaamisten efektien, kuten savu- ja tuliefektien esittämiseen reaaliaikaisissa 3D-grafiikan sovelluksissa, erityisesti peleissä. Reaaliaikaisuus asettaa suorituskyvylle tiukat vaatimukset, joten suorituskyky sekä partikkelien simuloinnin että piirtämisen yhteydessä on tärkeää. Tämä diplomityö esittää tehokkaan toteutuksen partikkelien simulointiin ja piirtämiseen konsoli- ja tietokonepelejä varten. Toteutuksessa keskeisintä on uudentyyppinen algoritmi partikkeleiden piirtoon. Piirtoalgoritmi on suunniteltu rajoittamaan piirtoaikoja perinteisesti vaikeimmissa tilanteissa, joissa partikkeleita joudutaan piirtämään kerroksittain suuria määriä. Algoritmi piirtää partikkelit käänteisessä syvyysjärjestyksessä suorituskyvyn parantamiseksi. Jotta partikkeleita voidaan simuloida samanaikaisesti suuri määrä, partikkelien simulointi on toteutuksessa siirretty kokonaan grafiikkasuorittimelle. Tilan säilyttävä simulaatiototeutus osoitetaan erittäin tehokkaaksi ja toteutettu piirtoalgoritmi osoitetaan toimivan nopeasti vaikeissa tilanteissa. Piirtoalgoritmin suorituskyky todetaan kilpailukykyiseksi myös tyypillisemmissä tilanteissa, joissa piirtokuorma on kevyempi.fi
dc.format.extent7+91
dc.identifier.urihttps://aaltodoc.aalto.fi/handle/123456789/16825
dc.identifier.urnURN:NBN:fi:aalto-201506303466
dc.language.isoenen
dc.locationP1fi
dc.programmeAUT - Automaatio- ja systeemitekniikkafi
dc.programme.majorViestintätekniikkafi
dc.programme.mcodeAS3002fi
dc.rights.accesslevelclosedAccess
dc.subject.keywordrenderingen
dc.subject.keywordreal-timeen
dc.subject.keywordcomputer graphicsen
dc.subject.keywordcomputer gamesen
dc.subject.keywordparticlesen
dc.subject.keywordblendingen
dc.titleEfficient Parallel Particle Simulation and Rendering for Gamesen
dc.titleTehokas järjestelmä partikkelien rinnakkaiseen simulointiin ja piirtämiseen peleissäfi
dc.typeG2 Pro gradu, diplomityöen
dc.type.okmG2 Pro gradu, diplomityö
dc.type.ontasotMaster's thesisen
dc.type.ontasotDiplomityöfi
dc.type.publicationmasterThesis
local.aalto.idinssi51875
local.aalto.openaccessno
Files