Announcement

Collapse
No announcement yet.

Dynamic shadows artifacts

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

    #16
    I'm getting this constantly since... 4.14 I guess?

    My solution is to either disable Ambient Occlusion in PostProcessing or to increase it radius.
    I doubt it's okay situation though - there were no issues earlier and all lowpoly meshes without textures by default look ugly in static mesh preview/material preview/etc
    SuperGrid: Marketplace Page | Feedback Thread | Demo | Website
    Level design and prototyping for newbies

    Comment


      #17
      It's a problem with Cascaded Shadow Maps.
      Try r.Shadow.CSM.MaxCascades 0
      It will disable Cascaded Shadow Maps though

      Comment


        #18
        How can disabling the CSM even be a workaround of any sort ._.

        Comment


          #19
          ask Epic, not me

          Comment


            #20
            While this particular issue is not UE4-specific, it is clearly manifesting itself waay too much by default.

            You should be able to increase shadow bias and add a bit of sharpening to reduce it. Just as a reminder, that you can push bias past slider limit of 1.

            If that is not enough, you can modify the way UE4 deals with self-shadow artifacts. Should be somewhere in ShadowFilteringCommon.usf

            Comment


              #21
              Shadow Bias 0.5






              Shadow Bias 2






              Notice how shadows from tessellation on the ground are significantly reduced.

              Comment


                #22
                increasing the shadow bias like that also greatly reduces how much "contact" the shadows appear to have. this becomes very noticeable with characters where their feet seem to cast no shadows under them and therefore appear to hover.
                increasing the shadow bias is also a known cause of light bleeding.

                in short: neither of the proposed workarounds are an acceptable solution.
                and once again (as showed in this and other threads) this issue is much less visible in other engines (UE3 included)
                Follow me on Twitter!
                Developer of Elium - Prison Escape
                Local Image-Based Lighting for UE4

                Comment


                  #23
                  I've posted on AnwerHub: https://answers.unrealengine.com/que...shading-1.html

                  Comment


                    #24
                    Is it me, or the issue got considerably worse compared to earlier versions?

                    Comment


                      #25
                      Originally posted by Deathrey View Post
                      Is it me, or the issue got considerably worse compared to earlier versions?
                      It didn't. I just tested this in 4.10 for fun, and get the exact same result once the light is set to 4 cascades.

                      Click image for larger version

Name:	YVGFyRf.png
Views:	1
Size:	147.9 KB
ID:	1128129
                      Last edited by Zeblote; 05-15-2017, 05:39 PM.

                      Comment


                        #26
                        There is one trick one could use to slightly improve the situation.
                         
                        Spoiler

                        Introduce some sort of fake normal bias. For shadow rendering, offset vertices, that are facing perpendicular to the light direction, slightly inward. It will reduce the area with visible artifacts while not causing much peter panning.
                        Should be used only for problematic objects and can't use it for meshes, that have smoothing splits. A pretty terrible way to do things, but might help you, if you have this shadow acne on core prop in the scene.
                         
                        Spoiler


                        The largest issue is that the problem worsens with increasing shadow samples. Some sort of adaptive depth bias is needed.
                        Last edited by Deathrey; 05-16-2017, 08:43 AM.

                        Comment


                          #27
                          Originally posted by Deathrey View Post
                          Some sort of adaptive depth bias is needed.
                          So... any reason why unreal isn't doing this yet? It seems like every other engine made in the last decade supports some sort of slope bias or normal offset.

                          Comment


                            #28
                            So... any reason why unreal isn't doing this yet?
                            Hard to guess really.
                            Maybe slope-scaled depthbias(correct me if I'm wrong, but UE4 does not use slope scaled depth bias for shadow depth rendering) brings in more issues, than it solves, or perhaps due to cross platform complications.
                            Or maybe it is simply considered that the issue is so insignificant in the final picture, that it does not deserve any attention.
                            Latter however is not true, because the problem is clearly noticeable on most curved surfaces in environments with a pronounced dominant light.
                            As to some advanced techniques, such as using DDX/DDY for more precise bias calculation, they might be not worth it performance wise.

                            Normal offset can be done on per-material basis.

                            In any case, I think that the problem deserves some attention.
                            Last edited by Deathrey; 05-17-2017, 11:52 AM.

                            Comment


                              #29
                              The landscape surface just looks so bad. Normal maps only make the problem harder to see but in some cases i.e smooth sand, there's no harsh normal map to hide the problem.


                              Comment


                                #30
                                Originally posted by Deathrey View Post
                                Hard to guess really.
                                Maybe slope-scaled depthbias(correct me if I'm wrong, but UE4 does not use slope scaled depth bias for shadow depth rendering) brings in more issues, than it solves, or perhaps due to cross platform complications.
                                Or maybe it is simply considered that the issue is so insignificant in the final picture, that it does not deserve any attention.
                                Latter however is not true, because the problem is clearly noticeable on most curved surfaces in environments with a pronounced dominant light.
                                As to some advanced techniques, such as using DDX/DDY for more precise bias calculation, they might be not worth it performance wise.

                                Normal offset can be done on per-material basis.

                                In any case, I think that the problem deserves some attention.
                                How are you doing normal offset in a material? I'm probably missing something here.

                                Comment

                                Working...
                                X