https://github.com/hanetakachou/ray-traced-ambient-occlusion
Ray Traced Ambient Occlusion
https://github.com/hanetakachou/ray-traced-ambient-occlusion
ambient-occlusion ambientocclusioin bent-normals dxr ray-tracing raytracing rtx ssao
Last synced: 6 months ago
JSON representation
Ray Traced Ambient Occlusion
- Host: GitHub
- URL: https://github.com/hanetakachou/ray-traced-ambient-occlusion
- Owner: HanetakaChou
- License: lgpl-3.0
- Created: 2023-11-20T11:52:34.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-11-19T13:31:11.000Z (6 months ago)
- Last Synced: 2024-11-19T14:36:49.952Z (6 months ago)
- Topics: ambient-occlusion, ambientocclusioin, bent-normals, dxr, ray-tracing, raytracing, rtx, ssao
- Language: C++
- Homepage: https://hanetakachou.github.io/index?file=Rendering/Ray-Tracing/Ray-Traced-Ambient-Occlusion.md
- Size: 562 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## RTAO (Ray Traced Ambient Occlusion)
[](https://github.com/HanetakaChou/Ray-Traced-Ambient-Occlusion/actions/workflows/build-windows.yml)
[](https://github.com/HanetakaChou/Ray-Traced-Ambient-Occlusion/actions/workflows/build-linux.yml)
[](https://github.com/HanetakaChou/Ray-Traced-Ambient-Occlusion/actions/workflows/build-android.yml)


```mermaid
graph TD
CPU_Write_Upload["CPU Write Upload"]
Asset_Vertex_Index_Buffer["Asset Vertex Position Buffer
Asset Vertex Varying Buffer
Asset Index Buffer"]
Geometry_Data_Upload_Buffer["Geometry Data Upload Buffer"]
Instance_Data_Upload_Buffer["Instance Data Upload Buffer"]
Acceleration_Structure_Instance_Upload_Buffer["Acceleration Structure Instance Upload Buffer"]
Acceleration_Structure_Pass[" ╔ ╦ ╗ ╠ Acceleration Structure Pass ╣ ╚ ╩ ╝ "]
Top_Level_Acceleration_Structure["Top Level Acceleration Structure"]
GBuffer_Pass[" ╔ ╦ ╗ ╠ (Ray Traced) GBuffer Pass ╣ ╚ ╩ ╝ "]
GBuffer_Depth_Image["GBuffer Depth Image"]
GBuffer_Normal_Image["GBuffer Normal Image"]
Ambient_Occlusion_Pass[" ╔ ╦ ╗ ╠ (Ray Traced) Ambient Occlusion Pass ╣ ╚ ╩ ╝ "]
Ambient_Occlusion_Image["Ambient Occlusion Image" ]
Full_Screen_Transfer_Pass["Full Screen Transfer Pass"]
Swap_Chain_Image["Swap Chain Image"]
CPU_Write_Upload -->|"Frame Throttling Index"| Geometry_Data_Upload_Buffer
CPU_Write_Upload -->|"Frame Throttling Index"| Instance_Data_Upload_Buffer
CPU_Write_Upload -->|"Frame Throttling Index"| Acceleration_Structure_Instance_Upload_Buffer
Acceleration_Structure_Instance_Upload_Buffer --> Acceleration_Structure_Pass
Acceleration_Structure_Pass --> Top_Level_Acceleration_Structure
Top_Level_Acceleration_Structure --> GBuffer_Pass
Asset_Vertex_Index_Buffer --> GBuffer_Pass
Geometry_Data_Upload_Buffer --> GBuffer_Pass
Instance_Data_Upload_Buffer --> GBuffer_Pass
GBuffer_Pass --> GBuffer_Depth_Image
GBuffer_Pass --> GBuffer_Normal_Image
Top_Level_Acceleration_Structure --> Ambient_Occlusion_Pass
GBuffer_Depth_Image --> Ambient_Occlusion_Pass
GBuffer_Normal_Image --> Ambient_Occlusion_Pass
Ambient_Occlusion_Pass --> Ambient_Occlusion_Image
Ambient_Occlusion_Image --> Full_Screen_Transfer_Pass
Full_Screen_Transfer_Pass --> Swap_Chain_Image
```