Could use some pointers from you guys regarding large level design

First of all, I downloaded the kite demo and tried to understand what all is going on with it. Best of my knowledge it’s using world composition with level streaming correct? Is it safe to assume that this is the most intuitive and performance friendly way to currently make large levels in UE4?

I’m certainly not looking for someone to hold my hand while I experiment with making a large environment, but I could really use a hand in pointing me in the right direction. There is practically no documentation on this! World composition is a new thing from ue4 that’s a better way to do things then persistent levels right?

I guess what I’m looking for is what’s the best way to go about creating a large environment like the kite demo? Would it be the same way the kite demo is created? Is there also a tutorial, wiki page, or any more information on how to go about creating a level like this the same way Unreal has?

When I look into world compostion and large worlds in ue4, I get a lot of information about persistent levels, and not a lot of info about world composition. tbh, i’m a little confused as to how it works. even though I read the wiki about it like 25 times. lol.

So far, the only info I have about it is from the World Composition User Guide. World Composition in Unreal Engine | Unreal Engine 5.1 Documentation

Other then that, I’m still a little confused as to what I need to do to go about creating something similar to the kite demo. Can anyone ELI5 this for me and point me towards a guide perhaps? or break it down on how it was created?

I’m also assuming I would need to create a large tiled environment in World Machine but is there a way to do this by hand? I start thinking about how my seams of my levels would match up, and my head basically explodes. This is all very new to me. Mostly what I’ve done in UE4 is mess around and do some 3d modeling here and there.

Hey there friend,
not sure if there is any documentation or tutorials at hand, but i can give you a brief rundown and a few directions towards my way of dealing with large environments.

This is how i did it, there might be other/better ways.

  1. Start a new project with all the kite demo assets.

  2. Generate your own map in world machine or get yourself a high resolution (2k+) height map from google. (those google heightmaps can wield awesome results, if you give them a small makeover and customization afterwards, you are generalle pretty much coverd in regards to believeable large environments)

  3. Create the landscape with your heightmap and assign the kite demo landscape material to your landscape. This should all be in persistant level!

  4. I used level streaming to break down the map and all its assets to different regions (e.g. town, village, cage, mine, etc.). Play around with your persistant level and those new levels your created. Everything that is always needed, no matter where you are at the map (like landscape, sky, wind, etc.) need to be in persistant level. You can even get kinky and do a whole bunch of small landscapes for every region, you just need to blend those in properly.

Everything specific like a cage can have its own level and can be unloaded once you leave it and enter another region. Bear in mind that you need to create some sort of pathways between those regions, which also have to be in persistant level. There are a few tutorials out there on persistant level and level streaming, you should give it a try.

  1. Conceptualize what you want to do on your map and where you want to have your specific areas early on. Get yourself an ocean and mountains to blend the horizon into the landscape and make it look smoother with a heightfog.

Remember! Those kitedemo assets eat up a lot of juju, you might want to step down from creating too large + highpoly + 4k textured environments if your pc is not able to load the full kite demo.

-> One quick thing id recommend using is this community project as a basis of operations: [Community Project] WIP Weather & Ocean Water Shader - Work in Progress - Unreal Engine Forums :slight_smile:
Its probably the best (free) ocean shader i have come across.

Good luck and have fun building. Give us a few screens when your done experimenting! :slight_smile:

Richard is exactly right.

One more thing to keep in mind is that UE4 is built for both real-time and cinematic rendering.

The Kite demo fits more into the criteria for cinematic than real-time.

There are numerous features in UE4 that just weren’t designed with real-time and large scale games in mind. A good example is the new planar reflections feature. It’s phenomenal for photorealistic cinematics, but with the extreme performance cost, you’d be hard pressed to be able to use it in any real-time resource intensive project.

Also, culling volumes and mesh instancing will be your best friends in this scenario.

So if the kite demo fits more into the criteria for cinematics, should I not use the assets from it? Also, if I were to make something say 75% the size of the kite demo environment, what would that translate to in a world machine output? I feel like there should be more documentation about a lot of this stuff then there is. Especially since unreal has this kite demo, but not much information to actually do things similar. At least from my own findings anyways. Granted I’m sure other people have done it just fine that are more experienced. Culling volumes and mesh instancing for sure!

It’d be cool if I could find an open world, or large level tutorial from the ground up on this. I’ll do a little research on level streaming and see what else I can dig up. Does level streaming work with world composition then?

Will this be a miltiplayer or singleplayer game ? I’m not sure if you can use world composition or level streaming in multiplayer.