Awesome
UnitySSPathTracingURP
Screen Space Path Tracing for Unity's URP (Universal Render Pipeline).
Please read the Documentation and Requirements before using this repository.
Screenshots
(BoxScene + Reflection Probe Fallback)
<!-- ![ProbeFallBackOn3](https://github.com/jiaozi158/UnitySSPathTracingURP/blob/main/Documentation/Images/BoxScene/EmissionFromReflectionProbe.jpg) Offline Accumulation ![Converged](https://github.com/jiaozi158/UnitySSPathTracingURP/blob/main/Documentation/Images/BoxScene/URP_ScreenSpacePathTracing.jpg) Real-time Accumulation ![Moving](https://github.com/jiaozi158/UnitySSPathTracingURP/blob/main/Documentation/Images/BoxScene/URP_ScreenSpacePathTracing_Moving.jpg) **Note:** Enable URP Temporal Anti-aliasing is important for improving stability. (exists since latest URP 14) -->(Not Included)
Original Cornell Box
Classroom by Christophe Seux (CC0)
Stormtrooper Star Wars VII by ScottGraham (CC-BY-3.0)
Refraction (Lit by emission)
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
References
Three-Eyed-Games GPU-Ray-Tracing-in-Unity
Introduction to Path Tracing - Marc Sunet
Please see PathTracing.hlsl.