Succinct Opacity Micromaps

Gustaf Waldemarson
Lund University, Arm

Michael Doggett
Lund University

High-Performance Graphics, July 2024

Teaser image

Ecosys scene Landscape scene New Sponza scene San Miguel scene Sponza scene

Abstract

Alpha masked geometry such as foliage has long been one of the trickier things to render efficiently, both for rasterization based approaches and for hardware accelerated ray-tracing. Recently, a new type of primitive was introduced to the Vulkan® and DirectX® ray-tracing APIs that promises to alleviate this issue: Opacity Micromaps, a structure that uses a bit of extra memory as hints to the pipeline when it should actually call the AnyHit-shader. In this paper, we extend this primitive with a novel compression method that uses the concept of succinct 4-way trees to reduce the memory footprint by up to 110 times, including an algorithm for looking up micromap values directly from this compressed form. Further, we perform a comprehensive analysis of the generated micromaps to demonstrate their performance in terms of both memory footprint and frame render time compared to a number of similar structures. Finally, we highlight some aspects of the extension that developers and artists should be aware of to make the most out of it.

Downloads and Links

BibTeX entry


@article{10.1145/3675385,
  author       = {Waldemarson, Gustaf and Doggett, Michael},
  title        = {Succinct Opacity Micromaps},
  year         = {2024},
  issue_date   = {August 2024},
  publisher    = {Association for Computing Machinery},
  address      = {New York, NY, USA},
  volume       = {7},
  number       = {3},
  url          = {https://doi.org/10.1145/3675385},
  doi          = {10.1145/3675385},
  abstract     = {Alpha masked geometry such as foliage has long been one of the
                  trickier things to render efficiently, both for rasterization
                  based approaches and for hardware accelerated
                  ray-tracing. Recently, a new type of primitive was introduced
                  to the Vulkan® and DirectX® ray-tracing APIs that promises to
                  alleviate this issue: Opacity Micromaps, a structure that uses
                  a bit of extra memory as hints to the pipeline when it should
                  actually call the AnyHit-shader. In this paper, we extend this
                  primitive with a novel compression method that uses the
                  concept of succinct 4-way trees to reduce the memory footprint
                  by up to 110 times, including an algorithm for looking up
                  micromap values directly from this compressed form. Further,
                  we perform a comprehensive analysis of the generated micromaps
                  to demonstrate their performance in terms of both memory
                  footprint and frame render time compared to a number of
                  similar structures. Finally, we highlight some aspects of the
                  extension that developers and artists should be aware of to
                  make the most out of it.},
  journal      = {Proc. ACM Comput. Graph. Interact. Tech.},
  month        = {aug},
  articleno    = {45},
  numpages     = {18},
  keywords     = {Compression, Opacity Micromaps, Ray Tracing}
}