jiaozi158 / UnitySSPathTracingURP

Screen Space Path Tracing for Unity's URP (Universal Render Pipeline). Using the full screen pass renderer feature in URP 14.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UnitySSPathTracingURP

Screen Space Path Tracing for Unity's URP (Universal Render Pipeline).

This shader is created in Shader Graph with the new URP 14 Full Screen Pass Renderer Feature.

This effect seems to be usable (stability, speed & noisiness) when I tested it on mobile device, so I decide to share it.

Please read the Documentation and Requirements before using this repository.

Screenshots

(BoxScene + Reflection Probe Fallback)

ProbeFallBackOn1

ProbeFallBackOn2

ProbeFallBackOn3

Offline Accumulation

Converged

Real-time Accumulation

Moving

Note: Enable URP Temporal Anti-aliasing is important for improving stability. (exists since latest URP 14)

(Not Included)

Original Cornell Box

OriginalCornellBox

Classroom by Christophe Seux (CC0)

Classroom

Stormtrooper Star Wars VII by ScottGraham (CC-BY-3.0)

StormTrooper

Refraction (Lit by emission)

Refraction

Documentation

Here.

Requirements

  • Unity 2022.2 and URP 14 (enable TAA is recommended)
  • Deferred rendering path (OpenGL will always in Forward path)
  • Forward rendering path (need extra setup)
  • Multiple Render Targets support (at least OpenGL ES 3.0 or equivalent)
  • Lowering down the Render Scale (e.g. "0.5") on mobile devices and use upscaler (e.g. FSR 1.0) to reduce performance cost.
  • Use "Refraction Lit" shader graph to render screen space path traced refraction.

License

MIT MIT License

References

Three-Eyed-Games GPU-Ray-Tracing-in-Unity

Introduction to Path Tracing - Marc Sunet

Please see PathTracing.hlsl.

About

Screen Space Path Tracing for Unity's URP (Universal Render Pipeline). Using the full screen pass renderer feature in URP 14.

License:MIT License


Languages

Language:C# 43.4%Language:HLSL 43.3%Language:ShaderLab 13.2%