Since Unreal Engine has come up a bit I have to ask; is there any particular reason why making open world games on UE4 is difficult? Going down the list on Wikipedia, the only open/semi-open world games I could see are: Days Gone, Gears 5, FFVII Remake, Crackdown 3, and Sea of Thieves. I might be reaching a bit with Gears 5 and FFVII Remake, but they feature some openness akin to the Halo games so I threw them in there.
If there's a thread or video/tech paper that can point me in the right direction, that'd be great! If this spawns a bigger discussion and forces a new thread, sorry BRiT
. I just need a short explanation so I can wrap my head around it.
imo, I guess the question for us is scale. As in, how far in perpetuity can it go before it hits a specific limit in which some form of loading must occur.
Rendering the open world environment without loading is capable for almost all engines, it can continually stream the environment without fail. But once you have enemies in and out, AI, objects, suddenly it's a larger issue.
We see this with most UE games in which there are loading screens, QTE events, doubling up to open doors. These sequences aren't for loading the levels, but for loading the interactable objects within them.
Pretty much most games (nearly all today) will have some form of cutscene or QTE, or little animation to hide these types loads.
The more you are allowed to interact with, and conversely bring things with you that the world builders did not expect, and to have access to do more in the game, the harder it should be on memory pressure. Some games do it better than others.
A game like Halo would have benefitted much from this, leaving it cross gen probably hurt it in this aspect. Objects come with more than textures, they come with animations, sounds, code, AI etc. All that needs to be loaded. So if you have 14 different weapons available in a level, 4 vehicles, 9 types of units, destructible objects, turrets, etc. This is a lot to all fit into memory at once. For XSX, it shouldn't have to hold it all in memory, the SSD is there to alleviate this pressure. For XBO and XSX, it should have been using much smaller assets to fit everything into memory.
A game like Anthem I think is a classic example of where it's free roam was fine. But any adjustments to your inventory, character, or stepping into an instance required a full load. So you couldn't change your exosuit until you landed at the quest hub to make changes. Mission instances all required some form of long load. Games were limited to 4 players in a session. I suppose the reason for doing this is to ensure all the players would load into the level loading only the weapons and effects of themselves and their allies. Graphically some of these were more intense than others I suppose.