Towards a High Quality Real-Time Graphics Pipeline
(2011)- Abstract
- Modern graphics hardware pipelines create photorealistic images with high geometric complexity in real time. The quality is constantly improving and advanced techniques from feature film visual effects, such as high dynamic range images and support for higher-order surface primitives, have recently been adopted. Visual effect techniques have large computational costs and significant memory bandwidth usage. In this thesis, we identify three problem areas and propose new algorithms that increase the performance of a set of computer graphics techniques. Our main focus is on efficient algorithms for the real-time graphics pipeline, but parts of our research are equally applicable to offline rendering.
Our first focus is... (More) - Modern graphics hardware pipelines create photorealistic images with high geometric complexity in real time. The quality is constantly improving and advanced techniques from feature film visual effects, such as high dynamic range images and support for higher-order surface primitives, have recently been adopted. Visual effect techniques have large computational costs and significant memory bandwidth usage. In this thesis, we identify three problem areas and propose new algorithms that increase the performance of a set of computer graphics techniques. Our main focus is on efficient algorithms for the real-time graphics pipeline, but parts of our research are equally applicable to offline rendering.
Our first focus is texture compression, which is a technique to reduce the memory bandwidth usage. The core idea is to store images in small compressed blocks which are sent over the memory bus and are decompressed on-the-fly when accessed. We present compression algorithms for two types of texture formats. High dynamic range images capture environment lighting with luminance differences over a wide intensity range. Normal maps store perturbation vectors for local surface normals, and give the illusion of high geometric surface detail. Our compression formats are tailored to these texture types and have compression ratios of 6:1, high visual fidelity, and low-cost decompression logic.
Our second focus is tessellation culling. Culling is a commonly used technique in computer graphics for removing work that does not contribute to the final image, such as completely hidden geometry. By discarding rendering primitives from further processing, substantial arithmetic computations and memory bandwidth can be saved. Modern graphics processing units include flexible tessellation stages, where rendering primitives are subdivided for increased geometric detail. Images with highly detailed models can be synthesized, but the incurred cost is significant. We have devised a simple remapping technique that allowsfor better tessellation distribution in screen space. Furthermore, we present programmable tessellation culling, where bounding volumes for displaced geometry are computed and used to conservatively test if a primitive can be discarded before tessellation. We introduce a general tessellation culling framework, and an optimized algorithm for rendering of displaced Bézier patches, which is expected to be a common use case for graphics hardware tessellation.
Our third and final focus is forward-looking, and relates to efficient algorithms for stochastic rasterization, a rendering technique where camera effects such as depth of field and motion blur can be faithfully simulated. We extend a graphics pipeline with stochastic rasterization in spatio-temporal space and show that stochastic motion blur can be rendered with rather modest pipeline modifications. Furthermore, backface culling algorithms for motion blur and depth of field rendering are presented, which are directly applicable to stochastic rasterization. Hopefully, our work in this field brings us closer to high quality real-time stochastic rendering. (Less) - Abstract (Swedish)
- Popular Abstract in Swedish
Datorgrafik handlar om att övertyga betraktaren. En huvuduppgift är
att generera verklighetstrogna bilder utifrån tredimensionella modeller.
Med hjälp av datorer simuleras hur dessa modeller interagerar med ljus.
Betraktaren skall helst inte reflektera över om bilden han ser
är ett fotografi eller en helt och hållet genererad bild. I denna avhandling
presenteras algoritmer som effektiviserar processen att skapa högkvalitativa
bilder utifrån virtuella modeller. Vi förbättrar en rad avancerade tekniker
för utritning av grafik med hög detaljrikedom och naturtrogen belysning.
I interaktiva visuella applikationer kan... (More) - Popular Abstract in Swedish
Datorgrafik handlar om att övertyga betraktaren. En huvuduppgift är
att generera verklighetstrogna bilder utifrån tredimensionella modeller.
Med hjälp av datorer simuleras hur dessa modeller interagerar med ljus.
Betraktaren skall helst inte reflektera över om bilden han ser
är ett fotografi eller en helt och hållet genererad bild. I denna avhandling
presenteras algoritmer som effektiviserar processen att skapa högkvalitativa
bilder utifrån virtuella modeller. Vi förbättrar en rad avancerade tekniker
för utritning av grafik med hög detaljrikedom och naturtrogen belysning.
I interaktiva visuella applikationer kan betraktaren interagera med den virtuella
scenen, och nya bilder måste skapas mer än 30 gånger per sekund. Ett par exempel
på denna typ av applikationer är flygsimulatorer, medicinska visualiseringar och
datorspel. Moderna datorer har dedicerade grafikprocessorer för att generera dessa bilder.
Vår forskning utgår från dessa grafikprocessorer, och presenterar modifieringar som gör
att de kan skapa mer avancerade bilder i realtid.
Vi visar först att bilder med stort dynamiskt omfång kan komprimeras effektivt.
Dessa bilder används flitigt i filmindustrin för att fånga in och spara omgivningsljus från
en viss miljö. Ljuset i dessa bilder används sedan för att återskapa naturtroget
ljus i virtuella scener. I grafikprocessorer för interaktiva applikationer är minnesbandbredden
ofta en begränsande faktor. Med vår komprimerade bildrepresentation blir dessa bilder
tillgängliga också för interaktiva applikationer.
Verklighetstrogen grafik byggs upp av scener med detaljerade modeller.
I avhandlingens andra del presenterar vi tekniker för
att undvika att behandla de delar av scenen som inte bidrar till
den slutgiltiga bilden. Detta reducerar den totala mängden arbete som
behöver utföras, och gör att en given bild kan genereras
på kortare tid. Med samma teknik kan vi även reducera den totala
energiförbrukningen som krävs för att generera en bild.
I den sista delen av avhandlingen blickar vi framåt och diskuterar tekniker
för verklighetstrogna kameraeffekter. Om man med lång slutartid fotograferar
ett rörligt objekt kan bilden av det rörliga objektet bli utsmetad.
Detta kallas rörelseoskärpa (eng. motion blur) och simulationer av detta
fenomen används flitigt i specialeffekter i filmer för att skapa naturtrogna animationer.
Tyvärr finns det inget direkt stöd för rörelseoskärpa i nuvarande grafikprocessorer, då
dessa effekter anses för kostsamma för att appliceras i interaktiva applikationer.
Vi presenterar en modifierad grafikprocessor som möjliggör simulering av dessa effekter.
Idag används visualiseringar av tredimensionella modeller flitigt inom flera områden.
Biologer använder dem för att förstå uppbyggnaden av molekyler. Arkitekter skapar
verklighetstrogna ritningar av hus. Bilindustrin använder virtuella modeller där material och
färger kan ändras interaktivt. Den mest framträdande användningen av datorgrafik är
i upplevelseindustrin, innefattande datorspel, och visuella effekter för film och reklam.
Våra resultat effektiviserar utritningen av dessa visualiseringar och är applicerbara både för
interaktiv grafik och högkvalitativ grafik i filmindustrin. (Less)
Please use this url to cite or link to this publication:
https://lup.lub.lu.se/record/1834759
- author
- Munkberg, Jacob LU
- supervisor
- opponent
-
- Professor Stamminger, Marc, Friedrich Alexander Universität, Department of Computer Science, Erlangen, Tyskland
- organization
- publishing date
- 2011
- type
- Thesis
- publication status
- published
- subject
- keywords
- Graphics Hardware, Computer Graphics, Rasterization, Texture Compression, Culling
- pages
- 229 pages
- defense location
- Lecture hall E:1406, Department of Computer Science, Ole Römers Väg 3, Faculty of Engineering, Lund University
- defense date
- 2011-04-01 10:00:00
- ISBN
- 978-91-976939-3-6
- language
- English
- LU publication?
- yes
- id
- e3cd621e-7483-4be7-841f-ec7821d5156d (old id 1834759)
- date added to LUP
- 2016-04-04 09:41:48
- date last changed
- 2021-05-06 20:04:57
@phdthesis{e3cd621e-7483-4be7-841f-ec7821d5156d, abstract = {{Modern graphics hardware pipelines create photorealistic images with high geometric complexity in real time. The quality is constantly improving and advanced techniques from feature film visual effects, such as high dynamic range images and support for higher-order surface primitives, have recently been adopted. Visual effect techniques have large computational costs and significant memory bandwidth usage. In this thesis, we identify three problem areas and propose new algorithms that increase the performance of a set of computer graphics techniques. Our main focus is on efficient algorithms for the real-time graphics pipeline, but parts of our research are equally applicable to offline rendering. <br/><br> <br/><br> Our first focus is texture compression, which is a technique to reduce the memory bandwidth usage. The core idea is to store images in small compressed blocks which are sent over the memory bus and are decompressed on-the-fly when accessed. We present compression algorithms for two types of texture formats. High dynamic range images capture environment lighting with luminance differences over a wide intensity range. Normal maps store perturbation vectors for local surface normals, and give the illusion of high geometric surface detail. Our compression formats are tailored to these texture types and have compression ratios of 6:1, high visual fidelity, and low-cost decompression logic. <br/><br> <br/><br> Our second focus is tessellation culling. Culling is a commonly used technique in computer graphics for removing work that does not contribute to the final image, such as completely hidden geometry. By discarding rendering primitives from further processing, substantial arithmetic computations and memory bandwidth can be saved. Modern graphics processing units include flexible tessellation stages, where rendering primitives are subdivided for increased geometric detail. Images with highly detailed models can be synthesized, but the incurred cost is significant. We have devised a simple remapping technique that allowsfor better tessellation distribution in screen space. Furthermore, we present programmable tessellation culling, where bounding volumes for displaced geometry are computed and used to conservatively test if a primitive can be discarded before tessellation. We introduce a general tessellation culling framework, and an optimized algorithm for rendering of displaced Bézier patches, which is expected to be a common use case for graphics hardware tessellation.<br/><br> <br/><br> Our third and final focus is forward-looking, and relates to efficient algorithms for stochastic rasterization, a rendering technique where camera effects such as depth of field and motion blur can be faithfully simulated. We extend a graphics pipeline with stochastic rasterization in spatio-temporal space and show that stochastic motion blur can be rendered with rather modest pipeline modifications. Furthermore, backface culling algorithms for motion blur and depth of field rendering are presented, which are directly applicable to stochastic rasterization. Hopefully, our work in this field brings us closer to high quality real-time stochastic rendering.}}, author = {{Munkberg, Jacob}}, isbn = {{978-91-976939-3-6}}, keywords = {{Graphics Hardware; Computer Graphics; Rasterization; Texture Compression; Culling}}, language = {{eng}}, school = {{Lund University}}, title = {{Towards a High Quality Real-Time Graphics Pipeline}}, url = {{https://lup.lub.lu.se/search/files/5393042/1834760.pdf}}, year = {{2011}}, }