Search Unity

Yes or No: Realtime GI supported in HDRP?

Discussion in 'High Definition Render Pipeline' started by create3dgames, Jun 28, 2020.

  1. create3dgames

    create3dgames

    Joined:
    Aug 20, 2012
    Posts:
    275
    Many have asked, no one has yet to answer.
     
  2. Bordeaux_Fox

    Bordeaux_Fox

    Joined:
    Nov 14, 2018
    Posts:
    589
  3. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,754
    Yes for now.

    or

    Not for long.

    If you are starting work on a game now, don't count on it.
     
    Last edited: Jun 28, 2020
  4. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    Current situation:

    Enlighten: HDRP supports this normally till 2019.2. 2019.3 and 2019.4 also work but it can be tricky to enable it on new projects since afaik Unity hides the settings for it (upgraded projects work). 2020.1+ doesn't haven Enlighten support on HDRP at all.

    DXR / Raytracing: 2019.3+ supports experimental raytracing GI with select Nvidia GPU's.

    DDGI (or whatever this tech is called now): this looks like it's coming at 2021 cycle earliest, no new info about it so could be next year... or year after that..
     
    adamb70 likes this.
  5. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    This really isn't an option for most since the most popular alternative (Unreal) doesn't have realtime GI either unless you count LPV.
     
  6. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,754
    Enlighten isn't realtime GI either though. LPV is more realtime in Unreal. And Godot's solution is more ready than Unity's.

    IMO, if you need something resembling realtime GI, use anything other than Unity.

    Actually, scratch that. Use anything other than Unity in general.
     
    Last edited: Jun 28, 2020
  7. Bordeaux_Fox

    Bordeaux_Fox

    Joined:
    Nov 14, 2018
    Posts:
    589
    They also have Screen Space GI which is better than no Realtime GI at all ...
     
  8. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    If we count SSGI, then Unity has that too on bleeding edge HDRP. But I don't really see this as usable technique to be used alone due to all the screen space artifacts.

    PR here: https://github.com/Unity-Technologies/Graphics/pull/95 (there's also been more fixes to it since)
     
  9. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    Godot having fancy GI is kinda weird to begin with when they don't even have proper occlusion culling in 3D. When I last evaluated Godot (around 3.0) it wasn't really usable for serious 3D projects at all, I doubt the situation on that has dramatically changed (and I mean now what is currently there, not about their future promises which frankly has not been delivered in past either).
     
  10. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,754
    I guess you consider Umbra's implementation in Unity to be "proper"?

    Don't count in features Unity doesn't have. It doesn't have proper realtime GI.
     
  11. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    I suggest you try Godot in 3D first, in some bigger scale level :D I don't think it has even any LOD system built-in.
     
    Last edited: Jun 28, 2020
    PutridEx likes this.
  12. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,754
  13. valarnur

    valarnur

    Joined:
    Apr 7, 2019
    Posts:
    440
  14. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,754
    You can barely count on features that are there, don't count on features that are maybe coming.
     
    DGordon likes this.
  15. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    It is! BUT with precompute step
     
  16. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,754
    If enlighten counts as realtime, LPV does as well.
     
  17. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    Light propagation volume? Sure it is

    If light probe volume, it's not

    Thanks graphics community for makin it confusing, but the difference is that the lighting is resolve or not in real time, whatever the quality or precision.

    The fun fact is that Light Propagation Volume still use Light Probe Volume, but use a sampling of nearby cell to resolve the lighting, to make it more confusing.
     
  18. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,754
    Isn't the Unity one LPPV ( Light Probe Proxy Volume) ?
     
  19. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,361
    Some moderator should just come here to tell "no" and lock this thread :p
     
  20. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    LPPV in unity is a local 3d texture that sample the unity LPV (light probe volume) at each of it's voxel to lit an object, hence the "proxy" part.

    The way unity LPV works is that it use a tetrahedral structure which decompose the scene into tetrahedra cells, and objects are lit by interpolating the position inside the cells. Problem is that it yield a single lighting interpolated Probe for the whole objects, which was an issue for big objects mostly, which need sampling a bigger range to have correct lighting.

    Therefore instead of using a single interpolation for lighting an objects, we interpolate at each voxel position of the 36d texture, then use the texture as a query to sample the light on object space, which give continuity of lighting across a wide range.

    The example is generally a big fregate spaceship entering a cave, with the tetrahedra lpv, the entire ship would fade as it enter the cave, with lppv they can have the tip being lit by the inside of the cave while the tail is still lit by the exterior.

    All those structure use SH probe by the way, probe can be cubemap too, but we aren't discussing those here, to keep things simple.
     
    AcidArrow likes this.
  21. create3dgames

    create3dgames

    Joined:
    Aug 20, 2012
    Posts:
    275
    The correct answer, after much deliberation, is no. Feel free to lock this thread. And no, SSGI doesn't work yet so that doesn't count.
     
  22. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,195
    I wouldn't call that the "correct" answer. I use Realtime GI in my HDRP 7 project under Unity 2019.4 LTS. It's true there's no official support under Unity 2020+, but depending on someone's specific needs and the tradeoffs they'll accept, HDRP + Realtime GI is a thing.
     
  23. create3dgames

    create3dgames

    Joined:
    Aug 20, 2012
    Posts:
    275
    Can you find any official source, such as a docs page on this? I wasn't aware of any realtime GI in HDRP, outside of raytracing options and perhaps the deprecated Enlighten system.
     
  24. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,195
    Sorry, I'm not trying to be subtle or giving an only "technically" correct answer, but I'm specifically referring to the "deprecated Enlighten system". Per my post, this is deprecated in Unity 2019, but available.

    upload_2020-12-31_9-54-19.png

    For people still using either of the LTS versions of Unity (2018 or more likely 2019), there is currently HDRP support for Realtime GI via Enlighten.

    This is not officially supported under 2020, but as I mentioned, depending on your specific needs (if 2019.4 is okay for your project) the feature is available. So, someone looking at a thread on whether Realtime GI is supported in HDRP should understand that for their project, they might prefer an earlier version of HDRP. With caveats.
     
    FM-Productions likes this.
  25. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    4,195
    Ne0mega and PutridEx like this.