Search Unity

[RELEASED] SSRT3: Screen Space Ray Tracing

Discussion in 'Assets and Asset Store' started by therrieno, Oct 20, 2022.

  1. therrieno

    therrieno

    Joined:
    Nov 29, 2019
    Posts:
    1
    Asset Store link

    Real-time global illumination using screen-space information for HDRP.

    0_CoverImage.png

    Like our previous implementations (SSRT) the algorithm is based on GTAO and uses a horizon-based method to retrieve GI samples, which makes it a lot less noisy/blurry than HDRP's SSGI. Performance is also better than SSGI, at around 2-3 ms on an RTX 3060 for the entire effect. Our novel method bypasses the infinite thickness limitation typical of horizon-based methods and enables light to pass behind thin surfaces (paper coming soon).

    Fallback to Adaptive Probe Volumes (APV) or Reflection Probes (static or updated every frame) is used to gather lighting that is not present on the screen. This ensures that the illumination is stable no matter where the camera is looking.

    Features:
    • Multi-bounce indirect diffuse lighting and occlusion
    • Support of emissive surfaces as an indirect light source
    • Directional occlusion of ambient light (similar to bent normals, but handles thin surfaces better)
    • Fallback to HDRP Ambient Probe Volumes (APV) and Reflection Probes for out-of-screen light

    Limitations:
    • It only works for HDRP
    • It only works in deferred mode

    Has been tested on Unity 2021.2 and 2022.1 (with HDRP 12 and 13 respectively). Since it's implemented as a custom post-process it should work on most HDRP versions. There are no additional dependencies apart from HDRP.

    6_SSRTOff.png

    4_SSRTOn.png

    5_IndirectLight_WithoutTexture.png

    panel2.png
     
    blueivy likes this.
  2. Qleenie

    Qleenie

    Joined:
    Jan 27, 2019
    Posts:
    868
    Hey, does it work with VR?
     
  3. Whatever560

    Whatever560

    Joined:
    Jan 5, 2016
    Posts:
    518
    I'm not sure why there is not much noise around this project, it seems highly efficient and having impressive results. We unfortunatelly are using the BiRP for our current project. I was looking for tools to enhance visual quality. We might have to settle for some other Ambient occlusion/Screen space effects that would be compatible.

    Would there be any plan to backport this to BiRP ? I was told that APV arrays (for placing, not rendering) can be generated regardless of the render pipeline and you could en up using static probes for the BiRP as fallback.
     
  4. Qleenie

    Qleenie

    Joined:
    Jan 27, 2019
    Posts:
    868
    @therrieno Do you know if it works with VR? I'd buy if it would do so.
     
  5. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,117
    I want to know if it supports VR
     
  6. Qleenie

    Qleenie

    Joined:
    Jan 27, 2019
    Posts:
    868
    It doesn't. I tried it out, and in SPI it renders on one eye. in multi-pass it renders only part of the screen; funnily it nearly works with multi-pass as soon as DLSS is enabled; in this case there's still some difference between left and right eye in ambient occlusion.
    So overall unless you want to patch yourself it wouldn't work for the majority of cases right now.