Announcement

Collapse
No announcement yet.

Landscape tiles align perfectly, yet dynamic light creates visible seams along edges of all tiles

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

    Landscape tiles align perfectly, yet dynamic light creates visible seams along edges of all tiles

    I've googled until all the links are purple without success, hoping someone can help with this:

    I have World Composition combining my landscape tiles (imported from heightmap file from photoshop), which is working perfectly in that the landscape wireframe aligns exactly and seamlessly. However (dynamic directional) light sources incorrectly light the row of faces along the edges of landscape tiles, creating very visible seams where tiles meet.

    The landscape follows the size recommendation in the UE4 documentation here (505x505).

    It looks kind of like normal-mapping gone astray on the final row of verts.
    Also similar to normals going askew, if I put a world-aligned-blend texture on it, the texture is blended incorrectly at the edges (the blend acts as if those faces are facing a different direction from the direction they are actually facing, similar to how the light is reflecting as if they are facing different direction)

    I'm under the impression that because the landscape comes from a 16bit heightmap, there can't be normals defined in the heightmap, or anything else I could be doing wrong in the heightmap. (The landscape aligns once imported so the problem presumably has to be in UE4)

    Google reveals a ton of examples of other edge-related problems, but I haven't been able to find any solutions or best-practices that address this one.
    Using a smoothing brush (set to 0) along the edges noticeably reduced some of the error, but I won't be able to do that for production and it didn't actually solve the problem, just reduced it.

    Below, the intersection of three landscape tiles, no texture, shows the dynamic light acting differently at the edges, making visible seams on geometry that has no such change in angle:
    Click image for larger version

Name:	seams1.JPG
Views:	337
Size:	24.5 KB
ID:	1372053

    The closeup of the landscape wireframe (grey) also confirms the faces of all three landscape tiles align properly and are not at a different angle that should be lit differently from the surrounding surface.
    Click image for larger version

Name:	seams2.JPG
Views:	296
Size:	67.9 KB
ID:	1372054

    Is there something I'm missing?
    Any help appreciated! Thanks!
    Last edited by RabbitHoleAvert; 10-19-2017, 11:47 AM.

    #2
    Solved! Finding no way to fix the normals yet knowing there are games that have not faced the issue, I knew there had to be something different in my workflow, and I eventually traced the problem to what appears to be a limitation or bug in the editor:

    The solution is to never use the "Import from File" option in the Heightmap Layer Actions menu (below) to import a heightmap file; it results in the bad normals along the edges of the landscape
    Click image for larger version  Name:	menuculprit.jpg Views:	1 Size:	12.2 KB ID:	1372007

    At this time (v4.17) the safest way to import a heightmap file seems to be to do it from the New Landscape menu via the "Import from File" option there.
    Last edited by RabbitHoleAvert; 10-19-2017, 09:14 PM.

    Comment


      #3
      Thanks for the fix J.Fisher. Had the same problem here.

      Comment


        #4
        I'm having the same problem and I just trawled through the code where this should occur and theres nothing about fixing seams.

        edit: Having said that, I see where and how its setting the normals, so its just a matter of accounting for neighbours and overriding this calculation.
        Last edited by duke22; 04-05-2018, 12:20 AM.
        George Rolfe.
        Technical Coordinator at Orbit Solutions Pty Ltd.

        Comment


          #5
          Originally posted by RabbitHoleAvert View Post
          At this time (v4.17) the safest way to import a heightmap file seems to be to do it from the New Landscape menu via the "Import from File" option there.
          Interestingly, we have run into the exact same issue (incorrect vertex normals along Landscape tile edges) even after using the New Landscape workflow in UE 4.22.

          At least the workaround proposed by Epic in a different thread (which is to use a Smooth brush with a strength of 0 on the entire Landscape, which seems to force the normals to be recalculated correctly, even across tiles) does seem to work and appears to hold up even after reimporting modified landscape tile heightmaps. So that's something.

          Still, it seems like this should be fixable at import time assuming the neighboring tiles are loaded, so this probably remains a bug.

          Comment

          Working...
          X