I have been thinking about a loading screen. From my non-coder way of thinking, a simple map that is present as loading screen while the proper level is being created is a fine solution.
But I see that people are searching for various solutions. My question is simply this: Why?
I do not see the problem of having a seperate map telling the gameplay map to load and fade away after finishing.
Can anyone give me an insight on what are the bads and goods of “loading screen map”? Thanks!
Thank you but I am not looking for how to implement it, rather what are the downsides of it and why people are searching for different routes.
Because it defeats the purpose of having a loading screen at all.
Depending on how big the world you’re currently in is, you’ll still experience a hangup / freeze while you load into the temporary world while the old world get’s removed from memory. A loading screen is supposed to be just that, it’s supposed to block all vision of the game while it does all the loading and ugly stuff in the background.
Loading to a different world between main worlds is just wasteful, and it doesn’t really fix the issue that is the main blocking call between worlds. Additionally, you still can’t have anything more than just a static image unless you’re prepared to do a lot of workarounds. Some people choose to do it with streaming levels, but that requires a complex streaming setup in most cases. The second link posted above is a tutorial I wrote and it’s less than 20 lines of code, it’s more than worth it to have a clean loading transition.
I understand now, thank you for the information. I will think about this.
I use a map/level for gamestart/mainmenue and i am happy with the result.
I locked player movement there, but mouselook with rmb is free.
Game loads about 5 secs. so far and after the mainscreen, again around 6 sec for first real level.
For now, i do not even need a loading screen for that short time, but sure it goes up for the reallevel, when everything is in place.
It’s also worth mentioning this here, Unreal is a bit strange in some respects - in that you have to be inside a world or level to have any form of interaction with the game. A lot of other engines don’t have this requirement but it’s just the way Unreal works.
Having levels for menu’s etc. is absolutely fine, it’s the intended (and really the only) workflow for Unreal. Gears of war did it, Unreal Tournament does it - all Unreal games use this approach. For loading screens though it’s different. Think of it this way, you want the player to experience the shortest loading times possible right? No matter how pretty the loading screen is, the players are always going to hate it. On non-PC platforms you nearly always have very limited memory to play with, so you need to use it as broadly as you can and opening unnecessary levels is a quick way to run out! (Gears of War 1 & 2 used world-based loading levels though, 3 did not).
This is what it makes me think of. (finally got around to making this):