OHAO
Engine
Full codebase tree (93 design units) + module monographs:
Also generated hubs: Core · Shaders · Render graph · Camera · Build & status · Full sitemap (93 units).
Vulkan cold-start, scene hand-off, deferred pass graphs, path-tracer host + NEE, sampling, hybrid inject, denoise contracts, physics/audio runtimes — workflows and diagrams, not file lists.
A long-form implementation monograph of OHAO.
If it shipped in the tree — pass order, descriptor binding, GGX as in
brdf_ggx.glsl, NRD YCoCg pack, TLAS/material order invariant —
it belongs here. Pretty pixels are evidence, not the product of the site.
How to read
Each chapter opens with a chapter contract: what that module owns, and what “done” means. Then: data flow, algorithms as coded, formulas with the same symbols as the shaders, design decisions with root cause, and a source file map.
- New to the repo → 01 Architecture → 02 Scene → 03 GPU
- Light transport → 06 Path tracer → 07 Sampling & MIS
- Realtime product path → 05 Deferred → 08 Hybrid → 09 Denoise
- Audio / physics systems → 10 Audio → 11 Physics
- Before claiming a feature → 13 Status
Dotted terms (GGX, NEE, TLAS, …) show a definition on hover — full list in the Glossary. This is deliberately denser than a README. If a chapter still feels thin, the right fix is more code-faithful detail — not fewer pages.
Hybrid rendering stack only. Unfinished research tracks stay out until they are first-class modules with the same honesty bar (contracts, limits, files).
Chapter map
Click a module. Every chapter ends with prev / next links so you can read straight through.
Architecture
Document thesis, spine, RenderMode, module ownership, global decisions.
Scene & ECS
Actor lifecycle, components, ModelLoader routes, no Vk* boundary.
GPU / Vulkan
TU split, layout bytes, BLAS/TLAS algorithm, instance=material invariant.
Materials & PBR
Shipped GGX, MaterialGpuPack, ORM, GPULight 80B contract.
Deferred
Exact GBuffer encode, render-graph order, IBL fix, hybrid inject.
Path tracer
Stages A/B/C, NEE types, demod AOVs, full descriptor map, profiles.
Sampling & MIS
Sobol/PCG, MIS GLSL, env CDF algorithm + Jacobian, lobe mix.
Hybrid RT
Inject gate, shadow/GI inputs, shared TLAS, bias note.
Denoising
Traits, YCoCg + hit-dist math, magenta postmortem, DLSS-RR.
Audio
miniaudio facade, SFX/Music/Ambient buses, 3D listener, volume gain chain.
Physics
IPhysicsBackend, world config, forces, joints, character, render sync.
Build & run
CMake options, lib graph, examples, pre-push goldens, Pages deploy.
Status
Evidence matrix, defining bugfixes, update protocol.
Thesis image. Same scene language can drive path-traced stills and realtime deferred iteration.