How to export landscape as static meshes in Unreal 5.3

Dumb-question: how do I turn my landscape (landscape-components) into static meshes.

Searched here and on the web. I find plenty of direction suggesting to do it, but not how to do it…

Is anyone able to explain how this process works?

I did poke around the editor, plugins, tried various landscape modes; scoped out all the GUI options I could find. I’m not seeing it… :frowning:

1 Like

Dont know about 5 particularly.
But…

One option would be to figure out where the Levels panel ended up and generate an impostor.
That will give you an Unreal Interpreted reduced mesh which you can export as any 'ol mesh.

Another option should be to click the landscape actor - i think in Edit mode - and export via right click.
The end result will be LOD0 so loading it in a DCC can take a bit (as can the export process).

Let folks know which of the oprion works / where to find the level’s/impostor generation panel if you happen to find it, I doubt they removed it alltogeter, and in theory its your best starting option unless you need one vertex every meter.

2 Likes

One thing is the mesh.

The next thing is your materials.

The next thing is your grass.

The next thing is custom LODs reduced properly (though i suppose you can force the engine to LOD too).

For materials:
While at a short distance you will want the layer like material to show up, at a far distance you should really need to swap out into a gneralized texture that uses a baked Normal Map to make the terrain look near ideantical to before the poly reduction (since shadows will change noticibly otherwise).
You need to put time/effort into making the material, then making the asset(s) work with the material.
No different than anything else really. Just not done for you automatically, so it takes a bit of legwork.

For your grass, you can export your grass layer paint hopefully.
If you cannot then you can output the grass layer as onto the surface, and scenerender2d the landscape from on top to obtain a PNG to use.

With the png, you feed it to the procedural tools to have it generate procedurally placed grass (instead of grass maps used by landscape).

For the LODs/even HLODs its essentially the same as any other static mesh asset.
You either make your own, and aggregate in engine, or you set the mesh to a custom type of (whatever its called?) And tell it to generate the LODs for you.

I’d define a custom (whatever its called?) Class for the landscape to have 7 levels of LODs with the last one being around 2000k tris tops.
Realistically you have to see what better fits…
Eg: a destert flat will be 2 tris. Towering mountains could need more than 2000k…
Which is why manual LODs are probably better (for perfomance).

3 Likes

Thank You.

I wanted to try and run some comparative performance tests against a landscape and what I am doing vs static meshes.

However, upon reviewing the process, I don’t know much it might avail me. Using a heightmesh for small-level details and the landscape material drives a lot of foliage (interaction w/custom instanced implementation), physics, interactive-trails/puddles, and stuff that is expressed in the heightmesh, etc. It also has water bodies passing alpha into the landscape material which then goes into the heightmesh for auto-underwater texturing, etc. Since the landscape material is only the height/where for varius layers, I can make the heightmesh the presentation-layer and make it all dynamic and like.

I don’t know how well I’d be able to split that up with static-meshes, esp since the height of the heightmesh comes into play for liquids and particulates (sand/snow)…

BUT! It’s good to have it doc’d with a clear title. If it exists in the forums, I couldn’t find it, so at least the process is here if anywhere.

As always, thanks for your input.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.