Search Unity

HDRP and Global Illumination

Discussion in 'High Definition Render Pipeline' started by rdrouot, Nov 26, 2020.

  1. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    Hello, I try to have some Global Illumination in a HDRP project.
    I would like to know if you need the Screen Space Global Illumination in your Volume object?

    - If YES, i have this error: the current hdrp asset does not support screen space global illumination. How to fixe it?

    - If NO, how I can have a Global Illumination?
     
  2. Remy_Unity

    Remy_Unity

    Unity Technologies

    Joined:
    Oct 3, 2017
    Posts:
    704
  3. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    I have enable it but I still get the error.

    Also in HD Renger Pipeline Wizard > HDRP + DXR, I see this message:
    upload_2020-11-26_11-42-44.png

    And in HD Renger Pipeline Wizard > HDRP + DXR > DXR Resources, I have this error:
    upload_2020-11-26_11-42-2.png
    Does it impact the SSGI?
     
  4. Remy_Unity

    Remy_Unity

    Unity Technologies

    Joined:
    Oct 3, 2017
    Posts:
    704
    DXR is not needed for SSGI, unless you explicitely want to use real time raytraced GI.
    Maybe you have multiple HDRP assets in your project (look at the quality levels in the quality settings, each one can hold a different HDRP asset), and the current used one doesn't have SSGI enabled ?
     
  5. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    Yes thank you, it's working.
     

    Attached Files:

    Last edited: Nov 26, 2020
  6. chap-unity

    chap-unity

    Unity Technologies

    Joined:
    Nov 4, 2019
    Posts:
    766
    Also, I want to point out if you want to see the effect in the scene view, you also need to enable SSGI in the HDRP default settings (default camera custom frame settings and also scene view camera settings)
     
  7. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    Ok it's noted
     
  8. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    Does Global Illumination work with realtime?
    When I put the spot light on mixed and I bake lightning I see the indirect light on walls, but if I put the spot light only on realtime and I don't bake lightning I don't see the indirect light.
     
  9. chap-unity

    chap-unity

    Unity Technologies

    Joined:
    Nov 4, 2019
    Posts:
    766
    Yes it's supposed to work with realtime.
    If you're not sure that it works (because sometime the effect can be subtle) you can go to Window > Render Pipeline > Render Pipeline Debug > Lighting > Full Screen Debug Mode > Screen Space Illumination.

    That way you can see only the SSGI effect and be sure that something is rendering on that side.
     
  10. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    This is what I have when spot light on mixed and I baked lightning: upload_2020-11-30_15-11-1.png

    And this with spot light on realtime and no baked lightning:
    upload_2020-11-30_15-22-49.png

    How to have the first image but with realtime light only?
     
    Last edited: Dec 1, 2020
  11. chap-unity

    chap-unity

    Unity Technologies

    Joined:
    Nov 4, 2019
    Posts:
    766
    It can be subtle and this screen space technique have several limitations and also limited budget in terms of performance cost, so you shoudn't really expect the same results with baked lighting and with realtime Screen Space Global Illumination.

    If you want something closer than Baked lighting in realtime, you can use Ray traced Global Illumination.
     
  12. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    Ok, thank you for the information.
     
  13. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    I have create new project and i'm not able to have the SSGI, I don't understand what is wrong.
    upload_2020-12-2_17-21-47.png

    upload_2020-12-2_17-22-8.png

    upload_2020-12-2_17-23-36.png

    upload_2020-12-2_17-22-35.png
     
  14. chap-unity

    chap-unity

    Unity Technologies

    Joined:
    Nov 4, 2019
    Posts:
    766
    Your approach and checks seems right.
    At this point the only idea I have would be that you are editing the wrong HDRP asset, i.e you're using a quality settings that use another HDRP asset.
    If not that, it's hard to answer without having a look at the project itself.
     
  15. rdrouot

    rdrouot

    Joined:
    Nov 16, 2018
    Posts:
    9
    Thank you.
    It was the Quality Setting. I didn't notice that also Quality Settings must used a HDRP Asset with GI enable.
     
    chap-unity likes this.
  16. VisualTech48

    VisualTech48

    Joined:
    Aug 23, 2013
    Posts:
    247
    Just to ask, if I bake the scene, some sort of limited GI should be there right?
    I'm baking this basic scene, and it doesn't relfect anything (the light is set to mixed, and I baked the scene)

    My point is if I move the spot light it should "fake bounce" the light around, right?

    upload_2020-12-29_6-16-48.png
     
  17. pierred_unity

    pierred_unity

    Unity Technologies

    Joined:
    May 25, 2018
    Posts:
    433
    Hey, yes it should bounce.

    However, your exposure seems very low, so you might not be able to see any bounce lighting in these conditions.

    First, disable the light after the scene has been baked. Lower the Exposure value for that scene in your volume, and you should see baked indirect lighting in the vicinity of the light.

    (And of course, the mesh renderers in the scene need to be set to Contribute GI and Receive GI from Lightmaps.)
     
  18. VisualTech48

    VisualTech48

    Joined:
    Aug 23, 2013
    Posts:
    247
    Thank you for the clarification, so to give more perspective, it still seems bugged. So if I move a mixed lighting in a baked scene it should still like "change" GI with its movement or am I wrong?
    Eg. (Bake works fine, but moving the light has no affected on Realtime GI:
    upload_2020-12-29_18-46-9.png
     
  19. VisualTech48

    VisualTech48

    Joined:
    Aug 23, 2013
    Posts:
    247
    Second image
     

    Attached Files:

  20. Safemilk

    Safemilk

    Joined:
    Dec 14, 2013
    Posts:
    42
    I'm actually having a similar problem, the baked indirect isn't working for GI contributing meshes the way it used to in previous versions, or at all potentially?

    I have an indirect override controller to test, set it to default, then to 10 for the indirect diffuse, the blend probes adjust correctly and so all the dynamic objects increase their indirect intensity, but the static meshes do not.

    In the Baked Lightmap view mode I also have to crank the Lighting Exposure Way down or its just full white.


    upload_2020-12-29_11-22-14.png
    upload_2020-12-29_11-22-26.png
    upload_2020-12-29_11-22-43.png

    upload_2020-12-29_11-23-14.png
    Something definitely IS happening though, it's just not what I've seen in PRE 2020.2 versions of Unity.
    In fact, when I upgraded and re-baked each level, one by one, my old nice lighting bakes turned into these really flat ones as I went through them, very confused!
     
    Last edited: Dec 29, 2020
  21. pierred_unity

    pierred_unity

    Unity Technologies

    Joined:
    May 25, 2018
    Posts:
    433
    There is no real-time GI available with HDRP currently (beyond unity 19.3 if I remember correctly), except if you use ray-traced GI.
    Therefore if you move the light object, the indirect lighting won't "follow" the light. You'd have to rebake again.

    A mixed light only provides real-time direct lighting and shadowing, not real-time indirect lighting.
     
    Last edited: Dec 30, 2020
    Shodan0101 and VisualTech48 like this.
  22. VisualTech48

    VisualTech48

    Joined:
    Aug 23, 2013
    Posts:
    247
    After carefully testing SSGI, it does seem EXTREMELY dimmed, like almost zero bounces, unless its really strong light. Is there a way to increse its "illumination"?

    Thanks for you answers
     
  23. pierred_unity

    pierred_unity

    Unity Technologies

    Joined:
    May 25, 2018
    Posts:
    433
    The rasterized SSGI is a rough approximation of indirect lighting in screen space, with the typical limitations/artifacts due to missing offscreen data. If you'd increase the effect's intensity, you could rapidly get the entire ambient lighting in your scene fluctuating massively as certain objects enter or leave the camera view and it would quickly become unusable. SSGI when pushed very high can look OK with fixed cameras and bespoke/hacky settings, but very quickly falls apart with dynamic cameras. Yet you still need a fallback in the form of lightmaps or light probes anyway.
    All these screen-space techniques are only here to enhance the existing lighting data (lightmaps, light probes and reflection probes), they're not meant to fully replace them.

    On the other hand, the ray-traced GI I mentioned in my previous message is a full blown realtime GI solution, but you need to enable ray tracing in your project to have access to it in the SSGI volume override. It is a fairly costly effect though, and it is still in Preview.

    See the doc for the ray-traced GI: https://docs.unity3d.com/Packages/c....2/manual/Ray-Traced-Global-Illumination.html
     
    chap-unity likes this.
  24. felix_Topgolf

    felix_Topgolf

    Joined:
    Dec 11, 2020
    Posts:
    3
    is there a date when it might come out? like will it be in the year 2021?
    (and I don't count enlighten)
     
    Shodan0101 likes this.
  25. valarnur

    valarnur

    Joined:
    Apr 7, 2019
    Posts:
    440
    Could you update Enlighten to latest version 3.12?
     
  26. sgthale

    sgthale

    Joined:
    Mar 10, 2018
    Posts:
    12
    Disappointed in the HDRP SSGI as it stands.
     
  27. m0nsky

    m0nsky

    Joined:
    Dec 9, 2015
    Posts:
    257
    What feature are you lacking / what's broken? I briefly tried it in combination with APV about 3 weeks ago and I got some good results with it.
     
  28. kite3h

    kite3h

    Joined:
    Aug 27, 2012
    Posts:
    197
    What people want is very simple. I want something like unreal lumen. Anyway, the default for lumen is SSGI. You just need to do offscreen processing. But why not? Reflection Probe fallback is clearly the right direction. But the reflection probe doesn't render the indirect diffuse properly, what does the fallback mean? Why don't you do something that's not too difficult?
     
    Marc-Saubion and newguy123 like this.
  29. newguy123

    newguy123

    Joined:
    Aug 22, 2018
    Posts:
    1,248
    Yes the nice thing about lumen is that you ALSO get realtime reflection, without having any reflection probes!
     
  30. chandan_unity831

    chandan_unity831

    Joined:
    Aug 11, 2022
    Posts:
    1
    I enabled SSGI settings in this files and it got fixed "the current HDRP asset does not support screen space global illumination"
     

    Attached Files:

    • GGI.png
      GGI.png
      File size:
      31.9 KB
      Views:
      107