Performance comparison on rendering methods for voxel data
URL
Journal Title
Journal ISSN
Volume Title
Perustieteiden korkeakoulu |
Master's thesis
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
Date
2019-08-19
Department
Major/Subject
Computer Science
Mcode
SCI3042
Degree programme
Master’s Programme in Computer, Communication and Information Sciences
Language
en
Pages
49
Series
Abstract
There are multiple ways in which 3 dimensional objects can be presented and rendered to screen. Voxels are a representation of scene or object as cubes of equal dimensions, which are either full or empty and contain information about their enclosing space. They can be rendered to image by generating surface geometry and passing that to rendering pipeline or using ray casting to render the voxels directly. In this paper, these methods are compared to each other by using different octree structures for voxel storage. These methods are compared in different generated scenes to determine which factors affect their relative performance as measured in real time it takes to draw a single frame. These tests show that ray casting performs better when resolution of voxel model is high, but rasterisation is faster for low resolution voxel models. Rasterisation scales better with screen resolution and on higher screen resolutions most of the tested voxel resolutions where faster to render with with rasterisation. Ray casting performed better only when model resolution was high compared to screen resolution or the model had high surface filling rate but low coherency. Differences between octree models where significant, bit in some cases even the base voxel data was fasterKolmiulotteisia kappaleita ja ympäristöjä voidaan esittää ja piirtää useammilla tavoilla. Vokseleilla malli esitetään kuutioiksi jaettuna alueena, jossa kuutio voi olla joko tyhjä tai täysi ja sisältää muuta informaatiota, jota tilan piirtämiseen voidaan käyttää. Vokseleita voidaan piirtää, joko luomalla niille pintageometria rasterointia varten tai käyttämällä ray cast -menetelmiä. Tässä tutkimuksessa menetelmiä vertailaan mittaamalla kuvan piirtämiseen käytettyä aikaa molemmilla menetelmillä muuttamalla piirettävien kolmiulotteisten mallejen ja piirretävän kuvan resoluutiota. Lisäksi testataan erilaisten octree-rakenteiden käyttämistä piirtämisen nopeuttamiseen. Tutkimuksen testit osoittavat, että rasterointi-menetelmä on nopeampi kun vokselimallin resoluutio on pieni ja kuvan resoluution kasvaessa se ottaa kiinni ray cast-menetelmää myös keski ja suuri resoluutioisilla malleilla. Rasterointi menetelmä on hyvin riipuvainen siitä, että piirrettävä malli pakkautuu hyvin octree-rakenteeseen, mutta eri octree-toteutusten erot suorituskykyyn ovat hyvin vähäisiä. Ray cast -menetelmät ovat nopeampia, kun vokselimallin resoluutio on korkea tai sen sisältö ei ole koherentia, mutta täyttöaste lähellä laitoja on korkea. Erot eri octree menetelmien välillä ovat merkittäviä, mutta joissain tapauksissa myös alkuperäinen vokselidata oli nopeampi.Description
Supervisor
Takala, TapioThesis advisor
Larja, JukkaKeywords
computer graphics, real-time rendering, voxels, rasterisation, ray casting, octree