Schütz, MarkusKerbl, BernhardWimmer, MichaelJosef SpjutMarc StammingerVictor Zordan2023-01-232023-01-2320222577-6193https://doi.org/10.1145/3543863https://diglib.eg.org:443/handle/10.1145/3543863The accelerated collection of detailed real-world 3D data in the form of ever-larger point clouds is sparking a demand for novel visualization techniques that are capable of rendering billions of point primitives in real-time. We propose a software rasterization pipeline for point clouds that is capable of rendering up to two billion points in real-time (60 FPS) on commodity hardware. Improvements over the state of the art are achieved by batching points, enabling a number of batch-level optimizations before rasterizing them within the same rendering pass. These optimizations include frustum culling, level-of-detail (LOD) rendering, and choosing the appropriate coordinate precision for a given batch of points directly within a compute workgroup. Adaptive coordinate precision, in conjunction with visibility buffers, reduces the required data for the majority of points to just four bytes, making our approach several times faster than the bandwidth-limited state of the art. Furthermore, support for LOD rendering makes our software rasterization approach suitable for rendering arbitrarily large point clouds, and to meet the elevated performance demands of virtual reality applications.CCS Concepts: Computing methodologies -> Rasterization Additional Key Words and Phrases: point cloud rendering, rasterization, real-time rendering, virtual realityComputing methodologiesRasterization Additional Key Words and Phrasespoint cloud renderingrasterizationrealtime renderingvirtual realitySoftware Rasterization of 2 Billion Points in Real Time10.1145/3543863