Announcement

Collapse
No announcement yet.

Dynamic shadows artifacts

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

    Originally posted by Maximum-Dev View Post

    Insert moon.jpg here.

    I know it's not the solution you probably want to hear, but until this gets fixed your best bet may be disabling shadows on landscapes entirely, then use contact shadows for any tessellation detail I know you probably want to have

    Normally you can just cover it up like normal, but on the moon I don't think that would really even be an option, so the sledgehammer approach may be the best one.

    Comment


      It’s Cary, in case anyone is really going to... ))) Anyways, we had to pause our project with landscape, even though it was nothing fancy, not even an open-world game - we are responsible people )) It’s almost impossible to make it look good. And all those other issues with large amounts of vegetation in UE4... And it’s a bummer because when the project started the future for UE4 looked very bright with so much promised by Epic. On the other hand we now have improved lightmaps and indoor lighting (well, sorta) and other improvements for the engine, and it’s great. But in any case I wouldn’t be optimistic about dynamic shadow artifacts and “large open-world” features. It’s Epic’s policy, I guess, to not speculate on issues they are not going to fix right away or in a near future. But at least a “Nope, guys, don’t have time for it right now” would be great so we could plan ahead and don’t have to put a project on hold for I-don’t-know-how-much-longer. Peace.
      Last edited by AntonBoiko; 01-23-2018, 08:12 AM.

      Comment


        Simple fix is to set r.Shadow.FilterMethod = 1. It's cost little bit performance but also gives proper soft penumbras for shadows.

        Comment


          Originally posted by Kalle-H View Post
          Simple fix is to set r.Shadow.FilterMethod = 1. It's cost little bit performance but also gives proper soft penumbras for shadows.
          it's not really better, it just shifts the problem somewhere else entirely

          when using that the shadows jitter like hell with an impossible-to-miss hard noise pixel pattern. I assume it relies on TemporalAA (which gives unacceptable ghosting in my case), but even with TemporalAA I see the noise pattern on far-away objects (the entirety of my case: a top-down citybuilder)
          also a drop of ~12% of performance (my case) can't be considered a fix
          Last edited by Chosker; 01-23-2018, 10:02 AM.
          Follow me on Twitter!
          Developer of Elium - Prison Escape
          Local Image-Based Lighting for UE4

          Comment


            Yes, there’s a solid fix needed, workarounds come at a cost and don’t fix the problem really.

            Comment


              Originally posted by Kalle-H View Post
              Simple fix is to set r.Shadow.FilterMethod = 1. It's cost little bit performance but also gives proper soft penumbras for shadows.
              Yeah, receiver plane depth bias, (which is used when r.Shadow.FilterMethod is set to 1) generally looks much better overall, but it is also prone to two major flaws. First being over-biasing on convex edges and under-biasing on concave edges. This is due to the nature of how partial derivatives with respect to screen-space work.

              It looks like that:


              Sad part is that to completely cure these artifacts, you would need to add almost the same amount of flat bias, that would otherwise be sufficient enough to cure acne everywhere alone.


              The second flaw of this biasing is that faces, facing away from the light would have completely wrong biasing. Is not a problem, but occasionally you may observe lonely unshadowed faces in shadow areas. This one can be and is dealt with by using only positive biasing and clamping the bias, but it reduces effectiveness overall.

              Yes, there’s a solid fix needed, workarounds come at a cost and don’t fix the problem really.
              There is no ultimate fix in existence, sadly. Only trade-offs so far exist.

              when using that the shadows jitter like hell with an impossible-to-miss hard noise pixel pattern
              I don't like temporally unstable jitter myself. It does not have to be like that, when using PCSS.

              Sometimes I wonder, why more shadow filtering options are not included in the engine by default, like it was the case with UDK. For example, I always used to prefer random sample placement, rather than box filter, which is now default for ordinary shadows.
              Last edited by Deathrey; 01-23-2018, 10:37 AM.

              Comment


                For percentage closer filtering to be usable I needed to make two fixes at ShadowPercentageCloserFiltering.usf. I did forget to mention this.

                Old:
                Code:
                // Wheather to enable the sharpening filter after PCF for sharper edges than the shadow map resolution.
                #define PCSS_ENABLE_POST_PCF_SHARPENING 1
                
                // Blocker search samples
                #define PCSS_SEARCH_BITS 4
                New:
                Code:
                // Wheather to enable the sharpening filter after PCF for sharper edges than the shadow map resolution.
                #define PCSS_ENABLE_POST_PCF_SHARPENING 0
                
                // Blocker search samples
                #define PCSS_SEARCH_BITS 5
                These mostly fixes noise and instability.

                Comment


                  I was calling this a corrugated effect. I thought it looked like a wet cardboard box. Setting this as a sequence helps, but costs a lot in performance. especially gpu, and fps.
                  Adding an Execute Console Command node in a blueprint within your game you can manually set the value of r.Shadow.CSM.MaxCascades, or you can enter the integer value of r.Shadow.CSM.MaxCascades in BaseScalability.ini Be Careful, and run stat gpu, and show fps before, and after. It's intensive, I get much sharper shadows but my ms usually increse.
                  and then changing theshadowquality to 4.
                  0 – 3 for Low, Medium, High, and Epic
                  r.LightFunctionQuality=1
                  r.ShadowQuality=4
                  r.Shadow.CSM.MaxCascades=4
                  r.Shadow.MaxResolution=2048
                  r.Shadow.RadiusThreshold=0.03
                  r.Shadow.DistanceScale=1.0
                  r.Shadow.CSM.TransitionScale=0.8
                  r.DistanceFieldShadowing=1
                  r.DistanceFieldAO=1

                  Comment


                    Originally posted by thadkinsjr View Post
                    I was calling this a corrugated effect. I thought it looked like a wet cardboard box. Setting this as a sequence helps, but costs a lot in performance. especially gpu, and fps.
                    Adding an Execute Console Command node in a blueprint within your game you can manually set the value of r.Shadow.CSM.MaxCascades, or you can enter the integer value of r.Shadow.CSM.MaxCascades in BaseScalability.ini Be Careful, and run stat gpu, and show fps before, and after. It's intensive, I get much sharper shadows but my ms usually increse.
                    and then changing theshadowquality to 4.
                    0 – 3 for Low, Medium, High, and Epic
                    r.LightFunctionQuality=1
                    r.ShadowQuality=4
                    r.Shadow.CSM.MaxCascades=4
                    r.Shadow.MaxResolution=2048
                    r.Shadow.RadiusThreshold=0.03
                    r.Shadow.DistanceScale=1.0
                    r.Shadow.CSM.TransitionScale=0.8
                    r.DistanceFieldShadowing=1
                    r.DistanceFieldAO=1
                    That has very little to do with the acne/biasing issue.

                    Comment


                      Well, I asked about this in the 4.19 preview stream forum thread and didn't get an answer (again) :\

                      Kinda shame since I've been asking for this question for ages (both in 4.18 preview thread and 4.17 preview thread), it's like they favour the twitch chat questions or something. In every single stream there is someone asking for something ridiculous like "when is dynamic GI coming?".... Stop answering the dynamic GI questions please.

                      It really is impossible to get someone from Epic to acknowledge this question at least. I really wouldn't care if they said "sorry, nothing for that in the future" as long as the said something.
                      Last edited by jonimake; 02-02-2018, 05:20 PM.

                      Comment


                        You know what we should do? Not contribute to the engine anymore, and mention everywhere publicly that people should stay away from Unreal Engine 4, until they finally achknowledge and fix this issue. Being ignored for all this time is simply disrespectful.

                        Comment


                          Originally posted by spacegojira View Post
                          You know what we should do? Not contribute to the engine anymore, and mention everywhere publicly that people should stay away from Unreal Engine 4, until they finally achknowledge and fix this issue. Being ignored for all this time is simply disrespectful.
                          Yeah right, that might be an option if there was an alternative to use instead.

                          Comment


                            There is always Lumberyard or Unity

                            https://aws.amazon.com/lumberyard/

                            Comment


                              Originally posted by jojo8026 View Post
                              There is always Lumberyard or Unity

                              https://aws.amazon.com/lumberyard/
                              We can't just abandon months or years of development and switch engines just because a thread goes 14 pages long and developers refuse to even comment and say "we wont fix it". We're just asking for some basic improvements.

                              At this point, I think people are more interested in hearing something from Epic, anything, in regards to this issue rather than seeing a solution to the problem. Because they're offended by the silence.
                              Artstation
                              Join the support channel
                              Gumroad Store

                              Comment


                                I've been trying to write up a reply for a bit now to suggest what could or should be done but there really isn't much to say. At its core, it's disheartening and saddening to see this go without a reply. I'm angry, worried and annoyed not by the bug but by the lack of a response in over a solid year. I could go rant about how Epic has abandoned the forum, plainly visible in the still broken software and lack of responses, or how the community has taken a sharp decline or all those things, but on the other hand I realize that they're all just humans doing their dayjobs and I'm sure they aren't avoiding this topic out of malice. I suppose it's my own fault for getting invested in the community and setting myself up for disappointment, but at this point I consider the fact that our projects are tied to UE4 and will be tied to UE4 for a good while in the future a fault rather than a strength. I can no longer know if this engine, its community or anything resembling an infrastructure will exist a year or two down the line, and that's very frightening.

                                Edit: Some people may think me melodramatic, but right now pretty much 100% of my income, my family's existence hinges on UE4, so it very much interests me if there is something unwell with any part of it. Even disregarding that, the forum community here is one I thoroughly enjoyed being a part of and one I grew much invested in.
                                Last edited by DamirH; 02-04-2018, 08:49 PM.

                                Comment

                                Working...
                                X