Best Practices for Handling Large Open World Maps in Unreal Engine?

Hi everyone,

I’m building a large open world map in Unreal Engine 5 and I’m starting to run into some performance and workflow challenges. The world is divided into multiple regions, and I’m using World Partition to manage streaming, but I’m not sure if I’m using it in the most efficient way.

A few things I’m struggling with:

  • Some areas take a long time to load when the player moves quickly across the map.
  • Certain assets don’t seem to unload properly, which causes memory usage to grow.
  • I’m unsure how to balance texture quality and streaming performance without making the world look “blurry” at times.

My questions are:

  • What are the best practices for optimizing large open world maps in UE5?
  • How do you decide when to use HLOD vs. regular LODs?
  • Any tips on managing textures so they load smoothly without sacrificing quality?

I’d love to hear how others have handled similar challenges. Any advice, workflows, or resources would be super helpful!

Thanks!

The first thing to note is: don’t use unreal.

The second thing to note is: if you insist on using unreal, don’t use anything epic provides.

The third thing to note is: if you use anything epic provides anyway. Deal with the fact next to nothing will work.

That said.
World partition doesnt work, you want the old world composition stuff to even have a chance.

Forget UE5. It cant even render a normal scene with Ok perfomance. Find a stable version of an Nvidia branch or non-epic-managed branch to work with. Then never update.

Since Hlods don’t really work you can’t choose them anyway. You can make your own LOd aggregation system or just levarage data layers and triggers to define distance based object swapping (from a single mesh with merged objects to multiple objects).

Virtual textures do help, but ofc, being something epic made they never finished implementing them all the way.
You shouldn’t have anything above 1k in size anyway given the engine itself can’t really render even 2k at 60fps on a good day with an empty scene for most of your userbase.
Keep in mind that the “blurry” look is unreal’s signiture. Its due to Mip scaling/loading. You won’t fix it unless you use an engine version that has been revised by a decent team (like Nvidia) and even then, they don’t really change that portion of the rendering pipeline so you have to make changes yourself - or just dont use Mips, but then you need to really balance your texture pool.

If you are serious about making stuff happen:
Work outside of the engine. Make things you can import into unreal just as well as any other engine.
It will save you time once you realize that Unreal isnt going to work and it wont hurt but only improve your experience should you choose to perseveere in unreal.