Our method accelerates rendering of challenging scenes with highly-contributing sparse geometry, such as in this scene with falling snowflakes illuminated from the lighthouse's spotlight, and rendered from a thin-lens camera. Path tracing (top right) struggles at finding the small contributing flakes even at very large sample counts. In contrast, our method (bottom left) finds three-vertex paths, by sampling vertices in the geometry based on the throughput, which allows to drastically reduce variance in a fraction of time.
Robust next-event estimation (NEE) remains a challenge in scenes characterized by sparse or small-scale geometry where indirect illumination is the primary transport mechanism. In these scenes, traditional path construction, which relies on local directional sampling, often fails to find intersections with the sparse geometry, and standard NEE also struggles as it typically connects vertices directly to emitters, failing when those connections are occluded or require intermediate bounces. We propose a novel approach that constructs paths via direct geometry sampling. Instead of relying on stochastic ray casting, we repurpose the scene's bounding volume hierarchy (BVH) as a hierarchical sampling structure. By performing a stochastic top-down traversal, we transform the selection of the next path vertex into a hierarchical problem. To prioritize high-throughput connections, the traversal is guided by a proxy contribution function evaluated at each internal node. This function leverages aggregated statistics of the geometry contained in the BVH nodes to efficiently estimate contribution during traversal. We demonstrate orders of magnitude improvements in complex scenarios such as indirect illumination from sparse geometry or rendering discrete scattering media.
Hierarchical One-more-vertex-Sampling Overview. (a) We wish to importance sample high-throughput three-vertex subpaths between vertices xs, xe. Our method is based on a hierarchical structure of the scene primitives that (b) aggregates its directional, spatial, and material statistics (represented by the gray sectors) at each node. The statistics computation is done bottom-up by aggregating the subnodes' statistics. (c) These statistics enable to guide the hierarchical sampling of the intermediate vertex xn by evaluating the approximated per-node weight w(N , xs, xe) (represented by the yellow bars) for each node's children and choosing one proportionally to its weight.
Code: Github repo
Coming soon...
Special thanks to the reviewers for their constructive insight. This work has received funding from the European Commission's HORIZON EUROPE Research and Innovation Actions project Sestosenso under GA number 101070310. Jorge Garcia-Pueyo was supported by the FPU23/03132 predoctoral grant and Nestor Monzon by a Gobierno de Aragon predoctoral grant (2023-2027).