Announcement

Collapse
No announcement yet.

Localized-IBL implementation

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Originally posted by Ju2das View Post
    Hey. Great job, thanks for sharing. In version 4.22, IBL works just fine. I have a problem with fully metallic materials. They simply do not reflect the light from Skylight.Was that what you intended? I can’t apply it, just because of the wrong reflection. Could you explain what the problem is?Click image for larger version

Name:	IBL_Problem_01.png
Views:	576
Size:	346.8 KB
ID:	1680140
    what exactly is failing there?
    I see a chrome sphere inside a box-room, reflecting the gray walls of that room on the sides and ceiling on the top, the green floor, and then the opening where it reflects the rest of the environment (including the sky)
    the non-chrome objects (the other sphere and the walls) are doing exactly the same - but since the high roughness causes the reflection to get blurred, the reflected sky environment gets blurred which leads to the sky colors appearing to affect a wider area of those surfaces (but at the same time much more dim)
    Follow me on Twitter!
    Developer of Elium - Prison Escape
    Local Image-Based Lighting for UE4

    Comment


      Originally posted by Chosker View Post
      what exactly is failing there?
      I see a chrome sphere inside a box-room, reflecting the gray walls of that room on the sides and ceiling on the top, the green floor, and then the opening where it reflects the rest of the environment (including the sky)
      the non-chrome objects (the other sphere and the walls) are doing exactly the same - but since the high roughness causes the reflection to get blurred, the reflected sky environment gets blurred which leads to the sky colors appearing to affect a wider area of those surfaces (but at the same time much more dim)
      I met the same problem. metallic material's reflection is wrong, even in a out door environment
      Click image for larger version

Name:	1-2.png
Views:	435
Size:	424.9 KB
ID:	1683141

      Comment


        Hi, you are saying everything right. But on metal materials there is absolutely no reflection from Skylight. By the way, I checked the build on version 4.23. With the exception of this bug, everything works.
        Attached Files

        Comment


          Originally posted by Ju2das View Post
          Hi, you are saying everything right. But on metal materials there is absolutely no reflection from Skylight. By the way, I checked the build on version 4.23. With the exception of this bug, everything works.
          have a look at this:
          Click image for larger version  Name:	iblreflection.png Views:	0 Size:	82.7 KB ID:	1683250

          1) that's your reflected skylight. that's correct behavior
          2) things are dark here because the reflection shows the interior, but the interior is no longer affected by the skylight (because the probe is blocking the skylight inside)
          3) things are not dark here because the interior is affected by the IBL lighting

          in UE4's PBR a full-white metal with 0 roughness is a perfect mirror, so the reflection matches 100% what the reflection probe has captured.
          in PBR a metal is an object that -only- reflects its environment (and is not affected by direct or indirect lighting, except to reflect the actual light), while a non-metal is affected by its lighting -and- can reflect on top of that.
          in vanilla UE4 without IBL it works the same way, that's just how PBR works. here's a sphere with full-white color, metallic set to 1 and roughness set to 0:
          Click image for larger version  Name:	vanillareflection.jpg Views:	0 Size:	118.8 KB ID:	1683251


          I guess the confusing part for you is why the reflected interior is so dark, when the actual interior has some ambient lighting applied (from the IBL).
          you should understand that the reflection probes are captured -without- the IBL lighting applied (otherwise re-capturing them would stack up the lighting, so every time you would recapture you would get a brighter result). therefore the -applied- IBL lighting does not appear on reflections. since IBL is made specifically to block the exterior skylight on interiors covered by reflection probes, the interiors' ambient light will always be black.
          for interiors the correct workflow would be to add actual lights, or alternatively to reduce the reflection probe's IBL contribution to allow some of the skylight to affect the interiors.

          hope that clears it up



          [edit]
          on second thought, I suppose for metals I could add the blurred reflection on top of the regular reflections which would fake them reflecting the IBL-affected interiors. as long as I modulate it as to not break the energy conservation law it would still be physically correct and the end result would be reflecting the interior IBL lighting.
          I'll give it a try eventually, but I don't have time atm. I guess I can do it when 4.24 is out and I work on porting it over
          Last edited by Chosker; 11-06-2019, 05:25 AM.
          Follow me on Twitter!
          Developer of Elium - Prison Escape
          Local Image-Based Lighting for UE4

          Comment


            about the 2nd picture, you have your viewport EV exposure set to -10. what's the bug there?
            Follow me on Twitter!
            Developer of Elium - Prison Escape
            Local Image-Based Lighting for UE4

            Comment



              Thanks for the detailed answer. I understood how it works.
              The second picture shows that there is no reflection from Skylight.
              on second thought, I suppose for metals I could add the blurred reflection on top of the regular reflections which would fake them reflecting the IBL-affected interiors. as long as I modulate it as to not break the energy conservation law it would still be physically correct and the end result would be reflecting the interior IBL lighting.
              I'll give it a try eventually, but I don't have time atm. I guess I can do it when 4.24 is out and I work on porting it over
              It would be amazing. Thank you for sharing such a powerful tool.

              Comment


                As promised posting here.
                Running 4.23.1 of release branch integrated with your IBL implementation
                Movable skylight + box reflection capture, contribution factor is 1, no matter what brightness I set it changes nothing. In editor everything is just fine, once I go into PIE/standalone game - no skylight override is happening. Re-enabling the feature via console doesn't affect image in any way.
                It happens either with Captured Scene or Specified Cubemap mode
                Last edited by BiggestSmile; 11-18-2019, 11:49 AM.
                Alone: The Untold - a story driven horror game

                Comment


                  alright BiggestSmile, I'll give it a try on 4.23.1 - yeah that means a fresh checkout/implementation on my side
                  since no one else reported it to work specifically on 4.23.1 this will also clear up if JINTECH's problems are an issue or not
                  I'll keep you posted
                  Follow me on Twitter!
                  Developer of Elium - Prison Escape
                  Local Image-Based Lighting for UE4

                  Comment


                    I have resolved my issue. Not completely sure if I was doing something wrong or it's just some weird behavior, however, as I've seen result in editor I assumed that's just working okay, however I didn't do Build -> Build reflection captures. I believe older versions did that automatically? Sorry in case it was only my mistake and nothing else. So, I can confirm it works just fine on 4.23.1
                    Alone: The Untold - a story driven horror game

                    Comment


                      Originally posted by BiggestSmile View Post
                      I have resolved my issue. Not completely sure if I was doing something wrong or it's just some weird behavior, however, as I've seen result in editor I assumed that's just working okay, however I didn't do Build -> Build reflection captures. I believe older versions did that automatically? Sorry in case it was only my mistake and nothing else. So, I can confirm it works just fine on 4.23.1
                      great, you've just saved me hours of [my already scarce] free time!
                      Follow me on Twitter!
                      Developer of Elium - Prison Escape
                      Local Image-Based Lighting for UE4

                      Comment


                        Hello!

                        Wanted to thank you Chosker for the incredible work! We integrated your implementation for our next project and it transformed our test interiors right away! Here are some comparison screenshots of what we've got and what we would have to deal with if not for the IBL :

                        Click image for larger version

Name:	Interior_IBL_On.jpg
Views:	352
Size:	270.0 KB
ID:	1689191Click image for larger version

Name:	Interior_IBL_Off.jpg
Views:	344
Size:	328.3 KB
ID:	1689192

                        Click image for larger version

Name:	Interior2_IBL_On.jpg
Views:	340
Size:	291.3 KB
ID:	1689193Click image for larger version

Name:	Interior2_IBL_Off.jpg
Views:	342
Size:	308.1 KB
ID:	1689194

                        Contribution Factor for IBLs in this level is 0.8 so that we could get some skylight in - this way it helps to see time of day change while inside (there are some other components for that not shown here).

                        Btw, we run this on 4.23.1 and everything seems fairly stable.

                        Sure hope you can keep supporting this in the future!
                        Attached Files

                        Comment


                          awesome
                          Follow me on Twitter!
                          Developer of Elium - Prison Escape
                          Local Image-Based Lighting for UE4

                          Comment


                            hi all, I've started working on the 4.24 port
                            I have yet to compile and test it, but
                            so far all the code seems to fit into the same places so I'm not expecting any problems at this point

                            [edit]
                            everything compiles and works fine
                            I'll update my branch shortly but at this point it's really the same to integrate it from the 4.23 version
                            Last edited by Chosker; 12-11-2019, 06:17 AM.
                            Follow me on Twitter!
                            Developer of Elium - Prison Escape
                            Local Image-Based Lighting for UE4

                            Comment


                              Why is there no way for us to vote features like this? Epic's response makes absolutely zero sense. If they are so worried about newbie engine user, then just put an advanced tab into rendering where we can enable stuff like this and make it hidden on default.
                              Portfolio

                              Comment

                              Working...
                              X