How to create a sharp edge in landscape mode

Hi There,

I have been struggling for days trying to create a sharp edge fall off with the landscape mode. I have watched videos and tried most of the sculp modes but it’s always sculpting at an angle.

I’d like to have a brick wall sit around the hill but no matter what I do I have landscape bleeding through at an angle.

If I leave the angled slope so that it’s not bleeding through at the front, there’s a massive gap between the wall and the grass around the top which also doesn’t look good.
Brick Wall Gap

I have been setting the Brush Falloff to 0 as that’s what I’ve read and watched online, but have tried it at 1 or more too just in case. I have also tried Erosion and Flatten at both but can’t seem to work it out.

I would be forever grateful if anyone knows how I can sculpt a straight edge please.

Thanks so much.

You can’t do a 90 degree surface on a heightmap based terrain.
You will always have an angle based on the vertex spacing of the terrain grid mesh.
You will have to use a static mesh to accomplish a right angle.

Hi DemenzunMedia,

Thanks so much for responding to my question!

When you say use a static mesh, what do you mean sorry?

Find a hill in the form of a static mesh and replace my landscape version?

Thanks again.

Hi. The hill can be made with the Landscape, but anything like a brick wall or hedge or other object that has a 90 degree vertical surface to it will have to be a mesh.
You might be able to find a mesh that will work with your design from the free Quixel meshes.
If you already have the wall mesh and you are just trying to get the landscape aligned to it, then keep the landscape flat to the inside of the mesh and then the angle, that way the angle is hidden inside of the mesh.

One make sheer surfaces on the Virtual Heightmesh as it naturally subdivides itself as you get closer (destructive LODing). Textures will look like junk if you are not projecting in the proper dimensions but you CAN make that lip you are looking for, and to boot, if you are feeding PBR information into it, blend the heightmesh with the static-mesh.

Hi DemenzunMedia,

Thank you. I did have it up against the mesh wall but then there was a gap along the top of the wall from the angle, if that makes sense.

I will have another look in Quixel though to see if there is a better option, thank you.

:slight_smile:

Hi Frenectic,

Thank you for your message.

Do you have any information on how to do that sorry? I don’t think I’ve done that before and trying to have a Google but not sure what I’m Googling :sweat_smile:

Thanks again for your help.

To use RVT + Heightmesh? This is one example: https://www.youtube.com/watch?v=H4jzMsiBkYg

There are many examples on youtube, search for ‘RVT heightmesh unreal’.

Short-version is you make your landscape material, and have it render to the runtime virtual texture. In the material itself, you need to pipe out to the Runtime Virtual Texture Output node so the material actually writes its output to that buffer:
image

As well, on the thing(s) you want to render into the RVT, you have to specify the actual virtual-textures:
image

On the material for the heightmesh, you pull from the RVT and then render your material accordingly. Usually one renders PBR information so you would (typically) sample from the RVT BaseColor, Specular, etc, do successive maths if you need to and then pipe to the corresponding nodes on your material:
image

(FYI I’m doing something different vs PBR information, so your mileage might vary, pins connected to whatever, etc…)

When you want to blend your meshes with the landscape, you make a mask/gradient, usually from the WorldPosition of the pixel vs the WorldHeight of the Heightmesh, then blend between sampling the RVT and the material for the mesh.

Again, my caution is that you can likely get that sharp SHAPE because the heightmesh will have smaller granularity on the (virtual) vertices as compared to the landscape, but the texturing might look like crap. I’ve found ABSOLUTELY sheer surfaces as in just hold the mouse button down ~10 seconds always seem to have issues, but even a slight deformation usually fixes it. In any case, you can make smaller bends than what you had shown above…

Hi,

Thanks so much for your in-depth answer, and my apologies for the late reply - I’ve only just found time to look at this again.

I have just followed that video however, it didn’t work for me.

I think its because I’m using a landscape material that I got for free from another video a while ago which has several different layers to it so when following that it just created blank virtual textures in the height field.

I will try again and see how I get on, thank you again.

1 Like

No worries, I’m around.

As far as the heightmesh itself, the size of the triangles (granularity) are driven by the density of the heightmesh. It’s generally better to have more tiles at small, or zero, size so the culling step can get a more exact set of information.

In my experience 12,0,1 is more performant than 10,2,1 whereas they have the same texel-density.

So! If you want or need smaller triangles for that wall, make sure you look at that number.

As well, you might want to futz with this setting:

It controls how far out the first LOD is displayed. Normally it transitions-out practically under one’s feet but as the heightmesh is decently performant, it can be pushed out quite a bit.

If your wall is not sharp enough, try looking at that setting.