Backface-culling for Displacement-mapped surfaces using CUDA

This thesis will be in the area of on-the-fly Tessellation for displacement-mapped subdivision surfaces in parallel using CUDA.
With on-the-fly tesselation, large amounts of geometry are created. Especially if fine displacement details are to be supported countless pixel sized triangles are required. As the triangle setup is one major bottleneck for current GPUs, it is desirable, to cull as much geometry as early as possible to ease the pressure on it and tessellation itself.
Backface culling is trivial for flat faces. For Bezier-Patches, a commonly used base surface for displacement mapping, it is possible to discard entire sub-patches, if the do not contain displacement. For subdivision-surfaces, and generally surfaces with displacement, a good method for culling is still missing.
The task of the thesis would be to design and implement a method to cull parts of a subdivision surface during breadth-first subdivision that will not be visible in the final image and design a metric to extend the culling to displaced surfaces.

Advisor(s)

  • Christian Eisenacher