Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Towards a High Quality Real-Time Graphics Pipeline

Munkberg, Jacob LU (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:
author
supervisor
opponent
  • Professor Stamminger, Marc, Friedrich Alexander Universität, Department of Computer Science, Erlangen, Tyskland
organization
publishing date
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}},
}