Hello, I have a finished game, but when the game starts or a new level loads, it takes a second or two for the assets to render on the screen. I understand this is normal, but my issue is that I can’t figure out how to have a loading screen block that. I have a loading screen widget with an animation, but if I call that widget in the main menu (as shown on a tutorial I watched), regardless of delay it plays prior to the level loading. If I call it from the level blueprint on event begin play, the assets still render first, then the widget gets called about a second after that. Is there a way to add a widget to the viewport before anything shows up on the screen at all for a level? Thanks!
What I do:
I create a MAIN level that will load as defaults in the project.
Once that level is loaded it will just play a widget with a video and one ‘loading’ animation in the lower right angle of the screen…
while you see the animation I load my soft references and everything I need to make the game work. I usually make all levels as sublevels of this MAIN simple level. This way I can also load the levels as stream levels and once loaded I can replace the loading animation by a skip intro button or something like that…after everything is loaded and the animation finishes then I go to the game main menu or skip the intro if assets were loaded.
This way I make sure the game will load fast and no need to wait for everything loaded for start.
in this example I start loading the sounds:
you can see in the ending (lower right) after loading all sounds I start loading my levels as stream levels (the game is not heavy so i can do it)
The games uses many photos so after the levels I load the Photos:
and when the photos are loaded then I am ready for enable intro skipping
In android the game takes like 5 secs to start the intro and about 10 more seconds in loading the other assets to be ready to go.
Thanks, that makes sense. I have never used level streaming, but my understanding is it isn’t difficult to learn, so I will work on that. I’m guessing it’s the level streaming that is allowing you to pre-load the sounds and photos in this case, since the “main” level is already running?
exactly…as the main level is light it loads fast and starts running…then you can keep loading the rest while you can have stuff happening (like intro, some animated icons, music, etc).
Also disable all plugins you don’t use. That will make your project lighter in terms of loading times and storage.
Great, thank you!