Real-Time Ray-Traced Ambient Occlusion of Complex Scenes using Spatial Hashing

Real-Time Ray-Traced Ambient Occlusion of Complex Scenes using Spatial Hashing

@inproceedings{gautron2020real,
  title={Real-time ray-traced ambient occlusion of complex scenes using spatial hashing},
  author={Gautron, Pascal},
  booktitle={Special Interest Group on Computer Graphics and Interactive Techniques Conference Talks},
  pages={1--2},
  year={2020}
}

https://history.siggraph.org/wp-content/uploads/2022/08/2020-Talks-Gautron_Real-Time-Ray-Traced-Ambient-Occlusion-of-Complex-Scenes.pdf

Intruduces Hashed Raytraced Ambient Occlusion (HRTAO)

Sample implementation: https://github.com/chrylt/AOSH-for-Architectural-Visualization

The spatial hashing technique hashes world-space coordinates into two distinct 32-bit keys. The first is the index in the hash map where the lighting information will be stored.

Since a 32-bit key could result in having unrelated points linked to the same hash index, a second hash function generates a checksum from the same coordinates.

When a collision is detected, a linear search finds the next free space. Storage and access are then performed in (near) constant time, making this approach efficient for parallel execution. The hash map is reused across frames for temporal coherence.

  • spatial_hashing_ray_tracing_3f9503faac54f9d219576e5377701b2b737c7eb6.svg user defined feature size in pixels

  • spatial_hashing_ray_tracing_995ad0855f11f6f4c8cbda023350bda86d5927a2.svg “target feature size” in world space spatial_hashing_ray_tracing_da13d076ff36a027fac37dc11f5d9df6fe0f26e0.svg

  • spatial_hashing_ray_tracing_e3b87027a52997f06ef1c2f5285aa116f1ec323e.svg smallest possible feature in world space (e.g. spatial_hashing_ray_tracing_05c79dbe5b9d7da8274cbfe27b431026d43ec99d.svg)

  • spatial_hashing_ray_tracing_1559704be50155ce9be59b8a7cde5bac82c8c1fe.svg position discretization spatial_hashing_ray_tracing_4d193208aceb60e470353c9736a1974bf99513e4.svg

  • Hash function for positions taking into account spatial_hashing_ray_tracing_1559704be50155ce9be59b8a7cde5bac82c8c1fe.svg

spatial_hashing_ray_tracing_6d93664df8f74daaa2f564fb3c26409faaf26a5b.svg
Calendar February 16, 2023 (Updated October 22, 2023)