ETH Zurich - D-INFK - IVC - CGL - Research - Point-Based Graphics - Hardware

Hardware Architectures for Point-Based Graphics


Simon Heinzle, Gaël Guennebaud, Mario Botsch, Markus Gross

Abstract Abstract | Publications

In recent years, point primitives have received a growing attention in graphics. On one hand, the dramatic increase of polygonal complexity has led to an overhead in processing huge meshes. On the other hand, modern 3D digital photography and scanning systems generate huge volumes of point samples and create the need for advanced digital processing of points. As a sample of geometry and appearance, points do not store any connectivity. However, current graphic cards do not yet support the high-quality rendering of point primitives efficiently. Furthermore, finding neighboring points is a fundamental operation in point-based geometry processing, and is usually performed using spatial data structures, an operation which is still slow on CPU and GPU architectures.

We developed a novel architecture for hardware-accelerated rendering of point primitives. Our pipeline implements a refined version of EWA splatting, a high quality method for antialiased rendering of point sampled representations. A central feature of our design was the seamless integration of the architecture into conventional, OpenGL-like graphics pipelines so as to complement triangle based rendering. The specific properties of the EWA algorithm required a variety of novel design concepts including a ternary depth test and using an on-chip pipelined heap data structure for making the memory accesses of splat primitives more coherent. In addition, we developed a computationally stable evaluation scheme for perspectively corrected splats. We implemented our architecture on two prototypes, one using a system of digital signal processors and a rasterizer ASIC, the other one implementing a more advanced pipeline using two FPGA boards, and we integrated it into an OpenGL-like software implementation. Our evaluation comprises a detailed performance analysis using scenes of varying complexity.


While high-performance software implementations for finding neighboring points exist, multi-core CPU systems do not scale very well because of their inflexible and general caching scheme. In comparison, GPGPU implementations are inefficient considering the size of graphic chips, mainly due to incompatibilities between the execution patterns and the massively-multithreaded SIMD model. We therefore investigated a hardware architecture dedicated to the efficient processing of unstructured point sets. Its core features a configurable neighbor search module as well as a programmable processing module. Our spatial search module features a novel advanced caching mechanism that specifically exploits the spatial coherence inherent in our queries. Our lean, lightweight design could be seamlessly integrated int existing massively multi-core architectures such as GPUs. Such an integration could be done in a similar manner as the dedicated texturing units, where neighborhood queries would be directly issued from running kernels. We implemented a prototype of the architecture on FPGAs operating at a rather low frequency of 75 MHz, and its performance already competes with CPU reference implementations. The architecture is geared towards efficient generic point processiong by supporting the two fundamental operators cached neighborhood queries and generic meshless operators. These concepts are widely used in computer graphics, making our architecture applicable to as diverse research fields such as point-based graphics, computational geometry, global illumination and meshless simulations.



Publications Abstract | Publications
  • S. Heinzle, G. Guennebaud, M. Botsch, M. Gross, A Hardware Processing Unit for Point Sets, Proceedings of the 23rd SIGGRAPH/Eurographics Conference on Graphics Hardware (Sarajevo, Bosnia and Herzegovina, June 20-21, 2008), pp. 21-31
    [Abstract] [PDF]
  • S. Heinzle, O. Saurer, S. Axmann, D. Browarnik, A. Schmidt, F. Carbognani, P. Luethi, N. Felber, M. Gross, A Transform, Lighting and Setup ASIC for Surface Splatting, Proceedings of International Symposium on Circuits and Systems (ISCAS) (Seattle, USA, May 18-21, 2008), pp. 2813-2816
    [Abstract] [PDF]
  • T. Weyrich, S. Heinzle, T. Aila, D. B. Fasnacht, S. Oetiker, M. Botsch, C. Flaig, S. Mall, K. Rohre, N. Felber, H. Kaeslin, M. Gross, A Hardware Architecture for Surface Splatting, Proceedings of ACM SIGGRAPH (San Diego, USA, August 5-9, 2007), ACM Transactions on Graphics, vol. 26, no. 3, pp. 90.1-90.11
    [Abstract] [PDF] [Video]

© CGL, ETH Zurich wwwgraphoinf.ethz.ch