The Heart

Here are the things about the landscape mentioned above for anyone interested in that.

The landscape I was working with from my previous update, where precut tiles with a high density of polygons were projected on to a sculpted landscape, then decimated afterwards to bring the polycount back down, ended up not working in the end because it wasn’t really able to pick up the smaller details of the sculpt when I added the path into the sculpt. It was mainly the way the path can kind of cut into the ground a little bit from being walked on all the time. So that meant having to go back to using the sculpted landscape where I was able to sculpt certain areas like the path with a finer density of triangles and still export it that way. The downside of this though was that the edges of each tile were all jagged because of the way the Dynamic Topology mode in Blender that creates geometry as you’re sculpting works only with triangles. So the edges of each tile looked like this:

The problem with that became apparent in Unreal when I used the automatic LOD generator to create the LODs for each tile. When it creates the LODs at the really low amount of polygons, it takes away all of those triangles and leaves a somewhat straight line, but one that is a bit wavy. So you end up with lots of holes between tiles that are quite visible. So to fix that I ended up using the knife tool in Blender to cut actual straight lines through those triangles for each tile edge:

That way the edges would still be right up next to each other when the LODs were made.

To do any sculpting work, you then just recombine the tiles you’re working on, do your sculpt work, cut the triangles that changed while sculpting, then separate the tiles again.

This ended up working quite well in the end and really combined the best of both the projected landscape, which had straight edges for each tile, and therefore straight lines for the LODs, and the sculpted landscape, which could have small details in specific areas.

The other really great thing I tried with it was to do custom settings for each of the generated LOD meshes in Unreal. It takes more time to set up, since you have to set things manually, but with the straight lines on each tile, you can get away with taking down the triangles in the mesh by very large amounts and also have it change to those LODs a lot closer to the camera than with the automatic LOD generation. This helped quite a bit because I was able to have the first LOD go down by 33% of the original mesh, then the next one down to 6%, and the last one down to 1.5%, or only 4,500 triangles for a mesh that’s originally around 300,000 triangles. This really cuts down on the amount of triangles being rendered for something that isn’t really seen much, which allows for adding more things that are seen to the game. You also can’t even tell when the meshes change either.

One really nice thing about all of it is I can also do a separate material instance that only mixes between basic colors,instead of mixing between all the Diffuse, Normal, etc. ground textures. So the further away tiles have a lot fewer instructions. Here is a view of the shader complexity to see that, where the darker green has more instructions being processed:

Since the LODs reduce the amount of triangles so heavily, there is also not much overdraw from triangles occupying the same pixel and therefore rendering the same pixel over and over again:

Also here is a view that shows the LOD meshes where white is LOD 0, red is LOD 1, green LOD 2, and blue LOD 3:

The last thing that needed solved after all of that was to do the collision mesh for each tile. With the way Unreal does the LOD generation, you don’t have control over how many triangles it takes away in different areas, so the path was basically being taken away completely for the collision mesh. To solve that, I just used Blender’s decimate modifier with the vertex group settings to control how much the path gets taken away, so it ends up like this:

Then you just import that as one of the LODs on the landscape, choose to use that LOD for collision, and you have good collision again.

I think that’s everything of how the landscape is set up now. Hopefully it helps somebody out!