I split the following height-map image into 4 equal parts in an image editing app and generated the 4 tile meshes below by applying a Displace modifier on 4 planes. It works well except I can see the seams when I import the tiles into an app I'm developing. Is there a way to generate tile meshes from height maps without visible seams?

Things I've tried (that failed): moving each tile closer to the next tile, making each tile slightly larger

enter image description here enter image description here

  • 1
    $\begingroup$ I think what causes the seams is a discontinuity in the normals where the tile objects meet. When I worked on a similar problem, I believe I found that creating a single merged version of the underlying tiles, and Hiding it from Viewport/Render but using it as the source of normals for the tiles with a Transfer Data (docs.blender.org/manual/en/latest/modeling/modifiers/modify/…) modifier, could be used to fully remove the seams $\endgroup$ Mar 5 at 22:36
  • $\begingroup$ @NeverConvex I think I understand what you're suggesting, but I'm subdividing each plane by the max amount (100) before applying the Displace modifier. If I subdivide the merged, larger plane by 100, wouldn't the combined mesh be at a lower (vertex) resolution than the individual tiles? $\endgroup$
    – Epsilon
    Mar 5 at 23:01
  • 1
    $\begingroup$ Yes, I think that's right; you could probably work around that by applying an extra level of subdivision to the larger plane, first, to give it a vertex at each of the same positions as the vertices of the tiling planes. Or, you may be able to build a normal map directly from the source image, and maybe can use that to control the tiling object's normals; I have not tried that. Still another normals-centric option would be to make the tiling object boundaries overlap a bit, then to manually remove the overlap from renders as post-processing (assuming you render each tile object separately) $\endgroup$ Mar 5 at 23:24
  • 2
    $\begingroup$ As an aside, 100 levels of subdivision is an incredible amount; the I'm not sure what a nice formula for it is, but verts in a plane grow exponentially with subdiv levels, like 4, 9, 25, 81, 289,.... 100 subdiv levels sounds like it would crash Blender even on some of the world's largest supercomputers! Oh, but maybe you're doing this with Number of cuts in the Plane object creation menu, not with subdivisions? That grows more reasonably $\endgroup$ Mar 5 at 23:33
  • $\begingroup$ @NeverConvex I meant number of cuts. In Edit Mode, Edge -> Subdivide -> Number of Cuts = 100. If I create a larger, overlapped image for each tile and cut the mesh to the right size, would that generate the correct normals at the edges? $\endgroup$
    – Epsilon
    Mar 6 at 0:05


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.