Adria DX12 Save

Rendergraph-based graphics engine written in C++ using DirectX12

Project README

Adria-DX12

Graphics engine written in C++ using DirectX12.

Features

  • Render graph
    • Automatic resource barriers
    • Resource reuse using resource pool
    • Automatic resource bind flags and initial state deduction
    • Pass culling
    • Graph visualization
  • DDGI
    • Probe visualization
  • GPU-Driven Rendering
    • GPU frustum culling
    • 2 phase GPU occlusion culling
  • Reference path tracer
  • Temporal upscalers
    • FSR2, FSR3
    • XeSS
    • DLSS3
  • Ultimate Bindless
    • Only one root signature
  • Volumetric lighting for shadow casting lights
  • Tiled deferred rendering
  • Clustered deferred rendering
  • Shadows
    • PCF shadows for directional, spot and point lights
    • Cascade shadow maps for directional lights
    • Ray traced shadows (DXR)
  • Volumetric clouds
    • Temporal reprojection
  • Hosek-Wilkie sky
  • Ocean FFT
  • Automatic exposure
  • Bloom
  • Tony McMapface tonemapping
  • Depth of field + Bokeh
    • Custom
    • FFX
  • Ambient occlusion:
    • SSAO
    • HBAO
    • CACAO (FFX)
    • RTAO (DXR)
  • Reflections:
    • SSR
    • RTR (DXR)
  • Antialiasing: FXAA, TAA
  • Contrast Adaptive Sharpening (FFX)
  • Film effects: Lens distortion, Chromatic aberration, Vignette, Film grain
  • Rain
  • God rays
  • Lens flare
  • Motion blur
  • Decals
  • ImGui editor
  • Profiler
    • custom and tracy profiler
  • Debug tools
    • Debug renderer
    • Shader hot reloading
    • Render graph dump and visualization
    • Shader debug printf
    • Nsight Aftermath SDK

TODO

  • ReSTIR GI

Screenshots

DDGI

Disabled Enabled
Probe Visualization

Volumetric Clouds

San Miguel

Ocean

Path Tracer

Editor

Ray Tracing Features

Cascaded Shadow Maps Hard Ray Traced Shadows
Screen Space Reflections Ray Traced Reflections
SSAO RTAO

Render Graph Visualization

Rain

Open Source Agenda is not affiliated with "Adria DX12" Project. README Source: mateeeeeee/Adria-DX12