WHAT
We’re continuing with our in-depth presentations of UE5 Early Access features, and this week it’s time to cover our new world building features! Unreal Engine 5 introduces built-in workflows for partitioning and streaming large levels, while easing collaboration between multiple people working in the same virtual world. Join us together with Principal programmer Jean-Francois Dube as we explore World Partition, Data Layers and One File Per Actor.
That’s awesome Victor! waiting for this one.
I got a question for the devs. Is world partition supporting procedural levels at runtime? i.e streaming different sublevels per tile each time you play.
Thank you!
Really looking forward to this!
Also having a question: What are the plans for dedicated servers, will they also support streaming out of the box, or will they load the full level?
Could you go over any “gotchas” with using One File Per Actor, especially with source control? Will developers know which individual assests are checked out before they start editing them, something as obvious as the icons in the content browser of UE4 but in the viewport itself? I checked out the docs, it’s just tough to test how a team will use this with only myself and one computer at the moment. An Online Learning course showing how a group of devs interact with the system would be awesome!
Hello, we saw some new MASS blueprint objects on UE5 demo map, could we get some additional information about those? Are they just blueprint objects or are there some extra stuff going on with them?
I have a question about “vertical streaming”, i will reword what i asked in the streaming chat to be more specific, for what i understand when i load a world cell all the stuff inside that cell will be loaded, so, if in this cell i have a building with some floors and all the floors are streamed one by one with the old level streaming system i wonder if the world partition system will override it and will load all the floors at once or it will load only the first floor and keep the old system for the others.
In the Question-Answer session, Jean-Francois mentioned that there is a new water system that is under development for UE5
. So, I want to know what kind of feature will be in that water system comparing to the one that we have in 4.26.
will there be any shader improvement in the new water system of UE5?
will there be physically correct waves? because waves in the 4.26’s water system don’t look realistic.
Cell size is a bit big for readability, but in the screen, one proxy is selected, which in turn is the size of 4 cells. Next landscape components are indicated by the checkerboard macro texture. And, finally, the light actors and such are all at 0,0.
As you can see, this means some cells are touching 4 proxies, while others touch 2, and components are all over the place.
I’m not sure if this really affects performance, but it seems quite counterintuitive, and leaves me with concerns there could be issues with conflict and HLOD fighting.
If, however, one shifts the landscape origin by half a component to line up with the grid, the result is much tidier:
Again, the cells are probably too big for most use cases. But even halved so there were 4 cells per component, they would still only encompass one comp or proxy at a time.
Question about the HLOD ‘instance’ layers merging. What if you have destruction, or like a resource gathering system where objects instances(trees, rocks, etc) are removed. Is there a mechanism to also remove them in the higher HLOD instance sets?
Also related to this, in multiplayer you say the server loads the whole world. Presumably that means loading the whole world at full representation(no HLOD stuff etc), because collision needs to be in tact. That means that when the player cuts down a tree, that instance index can be hidden on that tile, and on the server(to disable collision), but players that see that tree from a distance will likely continue seeing that tree if it were part of an HLOD instancing layer, correct?
I am guessing the solution to this would be to hook into the loading of HLOD levels and attempt to hide the tree on those HLOD levels as well based on a transform comparison on the proper mesh set. That sound right?
Replying to myself for the benefit of future people wondering similar. I finished watching the full stream, which answers some of my questions.
UE5 EA, servers load the entire world, so the early version doesn’t have server side world partitioning/streaming, although that is coming for the full UE5 release, along with something to allow dealing with persistence issues.
I also would like to know how to go about creating navmesh in world partition. In the talk they mentioned that it automatically splits the navmesh. Does that mean I need to create a single gigantic navmesh volume encompassing the whole world?