fast triangle rasterization using irregular z-buffer on cuda

In 3D rendering, shadows provide valuable visual information to viewers, and increase the level of realism in the rendering outcome. Therefore, shadow generation become a fundamental task in modern real-time rendering. Shadow mapping, one of the most common shadow generation techniques in real-time rendering, due to its inherent flaw is not capable of generating aliasing-free shadows. The irregular Z-Buffer algorithm revealed in 2004 eliminates the resolution mismatch problem in conventional shadow mapping, but it is not directly supported by the existing graphics hardware and lack of effcient software implementations. With the appearance of CUDA, the programmability of current graphics hardware has been drastically improved. It allows developers to leverage the enormous computation horsepower that resides in the current graphics hardware in a more flexible way. We provide a complete description to our irregular Z-Buffer based shadow mapping software implementation on CUDA. The rendering system we built is running completely on GPUs. It is capable of generating aliasing-free shadows at a throughput of dozens of million triangles per second.

[1]  Dinesh Manocha,et al.  Fast BVH Construction on GPUs , 2009, Comput. Graph. Forum.

[2]  Franklin C. Crow,et al.  Shadow algorithms for computer graphics , 1977, SIGGRAPH.

[3]  Timo Aila,et al.  Alias-Free Shadow Maps , 2004, Rendering Techniques.

[4]  Shubhabrata Sengupta,et al.  Efficient Parallel Scan Algorithms for GPUs , 2011 .

[5]  Dinesh Manocha,et al.  Logarithmic perspective shadow maps , 2008, TOGS.

[6]  George Drettakis,et al.  Perspective shadow maps , 2002, ACM Trans. Graph..

[7]  William R. Mark,et al.  Soft irregular shadow mapping: fast, high-quality, and robust soft shadows , 2009, I3D '09.

[8]  Lance Williams,et al.  Casting curved shadows on curved surfaces , 1978, SIGGRAPH.

[9]  Kun Zhou,et al.  Real-time KD-tree construction on graphics hardware , 2008, SIGGRAPH Asia '08.

[10]  William R. Mark,et al.  The Irregular Z-Buffer and its Application to Shadow Mapping , 2004 .

[11]  Elmar Eisemann,et al.  Sample Based Visibility for Soft Shadows using Alias‐free Shadow Maps , 2008, Comput. Graph. Forum.

[12]  Philipp Slusallek,et al.  A parallel algorithm for construction of uniform grids , 2009, High Performance Graphics.

[13]  Naga K. Govindaraju,et al.  A Survey of General‐Purpose Computation on Graphics Hardware , 2007 .

[14]  Fang Liu,et al.  FreePipe: a programmable parallel rendering architecture for efficient multi-fragment effects , 2010, I3D '10.

[15]  Pat Hanrahan,et al.  Data-parallel rasterization of micropolygons with defocus and motion blur , 2009, High Performance Graphics.

[16]  Michael Garland,et al.  Designing efficient sorting algorithms for manycore GPUs , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.