Lnadscape Grass Type

How can I block Landscape Grass Types from spawning through static meshes - rocks, and floors etc

I think the way you would want to do it is by having a landscape paint layer for removing foliage. Where the grass layer is painted, you’ll have grass. Where other layers are painted (“Remove Foliage”, “Dirt”, etc.), you’ll have no grass.

HI Astaraa - yes I thought about that and it does work - but although I wasn’t specific in the original question, I was wanting a way that I could somehow add a variable to the mesh geometry (particularly with floors), rather than have to manually paint. Ideally extend all meshes to include a boolean for RemoveGrass.

You can use runtime virtual textures to hide grass. If for example your game has placeable objects you can do that. Or to do what you’re saying with a boolean you’d probably have to use that.

But it can be a bit quirky. Painting can be simpler to deal with.


Modify the grass material. Add an RTV to it.

Change the UVs.
This can be either landscape wide (theres a specific formual with bounds to do so, fiddle a bit and youll find it). Or location based if you use an MPC to move the x/y position of the texture around. Either way positioned with WPO so not super cheap.

Pin one of the texture output into the alpha option.

Then at runtime you write to the texture and it will remove (disappear) the grass.

Usually, the RTV is the same used for landscape deformation or grass trails, so its one system levaring the other in hopes of reducing costs.

You can find the “origin” of this in a talk that shows a laser altering the look of the landscape at runtime. Ita old, but its a decent video to start adding runtime effects around…

Hey Andy!
Welcome back to the forums!

Yeah, it’s looking like Runtime Virtual Textures is what you’re going to be focusing on here.

Here’s the official UE documentation on RVT.

Here’s a Tutorial to get you started off quick! You might want to try this in a dummy project to get the hang of RVT.

And I believe this is the video that MostHost_LA was talking about in the above comment.

Give those a try and let us know!

No, its a gdc talk from Chris Murphy.
And it wasn’t RTV related as much as just Render target. The virtual part came several years after…

Found a link.

1 Like

Wow thanks for the input guys. @Astaraa @MostHost_LA @Mind-Brain Going to take me a while to work through these suggestions, but I will come back at some point. So little time after day job, I am sure you all have same problem with that, or at least have done in the past.
Plus still feeling new to Unreal ( a year or so on) and lots of virgin concepts / terminology to get my head around. MPC? WPO?
On top of all that I have a new problem where LGT is just crashing the project as it comes to the end of the load procedure. And I think Procedural Foliage was crashing on using re-simulate. Most annoying. Think it is time to invest in Source Control.

Anyway again, will come back on your comments as soon as possible. Thanks