@article{SCHUETZ-2021-PCC, title = "Rendering Point Clouds with Compute Shaders and Vertex Order Optimization", author = "Markus Sch\"{u}tz and Bernhard Kerbl and Michael Wimmer", year = "2021", abstract = "While commodity GPUs provide a continuously growing range of features and sophisticated methods for accelerating compute jobs, many state-of-the-art solutions for point cloud rendering still rely on the provided point primitives (GL_POINTS, POINTLIST, ...) of graphics APIs for image synthesis. In this paper, we present several compute-based point cloud rendering approaches that outperform the hardware pipeline by up to an order of magnitude and achieve significantly better frame times than previous compute-based methods. Beyond basic closest-point rendering, we also introduce a fast, high-quality variant to reduce aliasing. We present and evaluate several variants of our proposed methods with different flavors of optimization, in order to ensure their applicability and achieve optimal performance on a range of platforms and architectures with varying support for novel GPU hardware features. During our experiments, the observed peak performance was reached rendering 796 million points (12.7GB) at rates of 62 to 64 frames per second (50 billion points per second, 802GB/s) on an RTX 3090 without the use of level-of-detail structures. We further introduce an optimized vertex order for point clouds to boost the efficiency of GL_POINTS by a factor of 5x in cases where hardware rendering is compulsory. We compare different orderings and show that Morton sorted buffers are faster for some viewpoints, while shuffled vertex buffers are faster in others. In contrast, combining both approaches by first sorting according to Morton-code and shuffling the resulting sequence in batches of 128 points leads to a vertex buffer layout with high rendering performance and low sensitivity to viewpoint changes. ", month = jul, journal = "Computer Graphics Forum", volume = "40", number = "4", issn = "1467-8659", doi = "10.1111/cgf.14345", booktitle = "techreport", pages = "12", publisher = "Eurographics Association", pages = "115--126", keywords = "point-based rendering, compute shader, real-time rendering", URL = "https://www.cg.tuwien.ac.at/research/publications/2021/SCHUETZ-2021-PCC/", } @misc{kerbl-2020-improvencoding, title = "Improved Triangle Encoding for Cached Adaptive Tessellation", author = "Linus Horvath and Bernhard Kerbl and Michael Wimmer", year = "2020", month = jul, location = "online", event = "HPG 2020", Conference date = "Poster presented at HPG 2020 (2020-05-01--2020-06-22)", keywords = "GPU, tessellation, real-time", URL = "https://www.cg.tuwien.ac.at/research/publications/2020/kerbl-2020-improvencoding/", } @inproceedings{tatzgern-2020-sst, title = "Stochastic Substitute Trees for Real-Time Global Illumination", author = "Wolfgang Tatzgern and Benedikt Mayr and Bernhard Kerbl and Markus Steinberger", year = "2020", abstract = "With the introduction of hardware-supported ray tracing and deep learning for denoising, computer graphics has made a considerable step toward real-time global illumination. In this work, we present an alternative global illumination method: The stochastic substitute tree (SST), a hierarchical structure inspired by lightcuts with light probability distributions as inner nodes. Our approach distributes virtual point lights (VPLs) in every frame and efficiently constructs the SST over those lights by clustering according to Morton codes. Global illumination is approximated by sampling the SST and considers the BRDF at the hit location as well as the SST nodes’ intensities for importance sampling directly from inner nodes of the tree. To remove the introduced Monte Carlo noise, we use a recurrent autoencoder. In combination with temporal filtering, we deliver real-time global illumination for complex scenes with challenging light distributions.", month = may, event = "I3D ’20", booktitle = "Symposium on Interactive 3D Graphics and Games", pages = "1--9", URL = "https://www.cg.tuwien.ac.at/research/publications/2020/tatzgern-2020-sst/", } @inproceedings{unterguggenberger-2020-fmvr, title = "Fast Multi-View Rendering for Real-Time Applications", author = "Johannes Unterguggenberger and Bernhard Kerbl and Markus Steinberger and Dieter Schmalstieg and Michael Wimmer", year = "2020", abstract = "Efficient rendering of multiple views can be a critical performance factor for real-time rendering applications. Generating more than one view multiplies the amount of rendered geometry, which can cause a huge performance impact. Minimizing that impact has been a target of previous research and GPU manufacturers, who have started to equip devices with dedicated acceleration units. However, vendor-specific acceleration is not the only option to increase multi-view rendering (MVR) performance. Available graphics API features, shader stages and optimizations can be exploited for improved MVR performance, while generally offering more versatile pipeline configurations, including the preservation of custom tessellation and geometry shaders. In this paper, we present an exhaustive evaluation of MVR pipelines available on modern GPUs. We provide a detailed analysis of previous techniques, hardware-accelerated MVR and propose a novel method, leading to the creation of an MVR catalogue. Our analyses cover three distinct applications to help gain clarity on overall MVR performance characteristics. Our interpretation of the observed results provides a guideline for selecting the most appropriate one for various use cases on different GPU architectures.", month = may, isbn = "978-3-03868-107-6", organization = "Eurographics", location = "online", event = "EGPGV 2020", editor = "Frey, Steffen and Huang, Jian and Sadlo, Filip", doi = "10.2312/pgv.20201071", booktitle = "Eurographics Symposium on Parallel Graphics and Visualization", pages = "13--23", keywords = "Real-Time Rendering, Rasterization, Multi-View, OVR_multiview, Geometry Shader, Evaluation", URL = "https://www.cg.tuwien.ac.at/research/publications/2020/unterguggenberger-2020-fmvr/", } @misc{kerbl_2019_planet_poster, title = "Real-time Rendering of Procedural Planets at Arbitrary Altitudes", author = "Florian Michelic and Michael Kenzel and Karl Haubenwallner and Bernhard Kerbl and Markus Steinberger", year = "2019", abstract = "Focusing on real-time, high-fidelity rendering, we present a novel approach for combined consideration of four major phenomena that define the visual representation of entire planets: We present a simple and fast solution for a distortion-free generation of 3D planetary terrain, spherical ocean waves and efficient rendering of volumetric clouds along with atmospheric scattering. Our approach to terrain and ocean mesh generation relies on a projected, persistent grid that can instantaneously and smoothly adapt to fast-changing viewpoints. For generating planetary ocean surfaces, we present a wave function that creates seamless, evenly spaced waves across the entire planet without causing unsightly artifacts. We further show how to render volumetric clouds in combination with precomputed atmospheric scattering and account for their contribution to light transport above ground. Our method provides mathematically consistent approximations of cloud-atmosphere interactions and works for any view point and direction, ensuring continuous transitions in appearance as the viewer moves from ground to space. Among others, our approach supports cloud shadows, light shafts, ocean reflections, and earth shadows on the clouds. The sum of these effects can be visualized at more than 120 frames per second on current graphics processing units.", month = may, note = "Voted best poster of I3D '19", location = "Montreal, Canada", event = "I3D 2019", Conference date = "Poster presented at I3D 2019 (2019-05-21--2019-05-23)", keywords = "planet, rendering", URL = "https://www.cg.tuwien.ac.at/research/publications/2019/kerbl_2019_planet_poster/", }