Table of Contents
Fetching ...

Path Guiding for Wavefront Path Tracing: A Memory Efficient Approach for GPU Path Tracers

Bora Yalçıner, Ahmet Oğuz Akyüz

TL;DR

This work addresses the memory bottleneck of path guiding in wavefront path tracing on GPUs by caching radiant exitance in a single global sparse voxel octree and generating guiding PDFs on the fly. The method, called WFPG, introduces on-the-fly radiance-field generation via cone tracing, SVO-based radiance caching, and GPU-friendly partitioning and sampling schemes, including product guiding and sample-combination heuristics. Results across multiple scenes show competitive image quality with substantially lower scene-related memory and a runtime footprint comparable to other GPU-based WFPT implementations, while demonstrating clear guidance gains under indirect illumination. The approach offers a practical, memory-efficient path-guiding paradigm for real-time or interactive GPU path tracers, with open-source code to encourage future work.

Abstract

We propose a path-guiding algorithm to be incorporated into the wavefront style of path tracers (WFPTs). As WFPTs are primarily implemented on graphics processing units (GPUs), the proposed method aims to leverage the capabilities of the GPUs and reduce the hierarchical data structure and memory usage typically required for such techniques. To achieve this, our algorithm only stores the radiant exitance on a single global sparse voxel octree (SVO) data structure. Probability density functions required to guide the rays are generated on-the-fly using this data structure. The proposed approach reduces the scene-related persistent memory requirements compared to other path-guiding techniques while producing similar or better results depending on scene characteristics. To our knowledge, our algorithm is the first one that incorporates path guiding into a WFPT.

Path Guiding for Wavefront Path Tracing: A Memory Efficient Approach for GPU Path Tracers

TL;DR

This work addresses the memory bottleneck of path guiding in wavefront path tracing on GPUs by caching radiant exitance in a single global sparse voxel octree and generating guiding PDFs on the fly. The method, called WFPG, introduces on-the-fly radiance-field generation via cone tracing, SVO-based radiance caching, and GPU-friendly partitioning and sampling schemes, including product guiding and sample-combination heuristics. Results across multiple scenes show competitive image quality with substantially lower scene-related memory and a runtime footprint comparable to other GPU-based WFPT implementations, while demonstrating clear guidance gains under indirect illumination. The approach offers a practical, memory-efficient path-guiding paradigm for real-time or interactive GPU path tracers, with open-source code to encourage future work.

Abstract

We propose a path-guiding algorithm to be incorporated into the wavefront style of path tracers (WFPTs). As WFPTs are primarily implemented on graphics processing units (GPUs), the proposed method aims to leverage the capabilities of the GPUs and reduce the hierarchical data structure and memory usage typically required for such techniques. To achieve this, our algorithm only stores the radiant exitance on a single global sparse voxel octree (SVO) data structure. Probability density functions required to guide the rays are generated on-the-fly using this data structure. The proposed approach reduces the scene-related persistent memory requirements compared to other path-guiding techniques while producing similar or better results depending on scene characteristics. To our knowledge, our algorithm is the first one that incorporates path guiding into a WFPT.
Paper Structure (24 sections, 8 equations, 11 figures, 6 tables, 3 algorithms)

This paper contains 24 sections, 8 equations, 11 figures, 6 tables, 3 algorithms.

Figures (11)

  • Figure 1: The top-down view of the entire path-guiding algorithm. Blue rectangles of the image show the wavefront path tracing operations. Other colored parts are the additional steps required for guiding the rays. $Partition_p$ and $Partition_m$ sections represent partitioning the rays by position and material, respectively. Device code is executed for each spatial batch. Each batch generates an incoming radiance field, which is incorporated into the sampling scheme. Paths that reach an emitter contribute to an approximation of the radiant exitance, which is cached on an SVO.
  • Figure 2: The approximate normals of the voxel are calculated by conducting a k-means clustering with $k=2$. This prevents opposite normals from canceling each other out.
  • Figure 3: Normalized radiance fields of our method (WFPG) and Müller et al.'s method (PPG). In this instance, our method produces a radiance field with a resolution of $128^2$. Both methods are trained using an equal number of samples (2048 per pixel). The reference radiance field is generated via path tracing and has a resolution of $256^2$ ($2^{16}$ samples per pixel).
  • Figure 4: False color representation for the binning process for the initial rays coming from the camera. For each colored region, a single local radiance field is generated. Note that the region size increases with the ray count threshold parameter, $c_{\textrm{ray}}$.
  • Figure 5: Single sample variance of the proposed and traditional path-tracking methods. Each sample on the graph is considered in isolation. This graph exposes our method's learning scheme. The general trend of the light distribution is immediately learned in a couple of samples. In this example, the benefits stabilize after about the $20^\textrm{th}$ sample. The first sample of path guiding has higher error than pure path tracing because we sample an omnidirectional field, whereas path tracing samples a hemispherical one.
  • ...and 6 more figures