Easy Going Vector Graphics as Textures on the GPU
Abstract
One common problem of raster images when used as textures is its resolution dependence, which could produce artifacts such as blurring. On the contrary, vector graphics are resolution independent, and their direct use for real-time texture mapping would be desirable to avoid sampling artifacts. Usually, they composite images from layers of paths and strokes defined with different kinds of lines. Here I present a simple yet powerful technique for representing vector graphics as textures that organizes the graphic into a coarse grid of cells, structuring each cell into simple cell-sized BSP trees, evaluated at runtime within a pixel shader. Advantages include coherent low-bandwidth memory access and, although my implementation is limited to polygonal shapes, the ability to map general vector graphics onto arbitrary surfaces. A fast construction algorithm is presented, and the space and time efficiency of the representation are demonstrated on many practical examples.
BibTeX
@inproceedings {10.2312:ceig.20151204,
booktitle = {Spanish Computer Graphics Conference (CEIG)},
editor = {Mateu Sbert and Jorge Lopez-Moreno},
title = {{Easy Going Vector Graphics as Textures on the GPU}},
author = {Patow, Gustavo},
year = {2015},
publisher = {The Eurographics Association},
DOI = {10.2312/ceig.20151204}
}
booktitle = {Spanish Computer Graphics Conference (CEIG)},
editor = {Mateu Sbert and Jorge Lopez-Moreno},
title = {{Easy Going Vector Graphics as Textures on the GPU}},
author = {Patow, Gustavo},
year = {2015},
publisher = {The Eurographics Association},
DOI = {10.2312/ceig.20151204}
}