- Home /
How to create a loading screen at the beginning? Load asynchronous not working
Short version: I'm making a 2D game for Android, I want a custom loading scene when the game starts (Clash Royale style) but no matter what, after the Unity splash screen, there is a 3-5 seconds wait until it loads anything, including the loading screen.
Long version: Hi everyone. I'm developing a 2D game for Android (using Unity 2018.3.2f1), and I've noticed that after the Unity splash screen, the screen turns dark grey and it takes between 3 to 5 seconds to load the first scene of the game (tested on 3 devices).
I thought it was simply a performance issue (the first scene includes a song, a few DontDestroyOnLoad objects, etc), so I made a loading screen, following this tutorial by Brackeys. I was hoping that, if the game needs 3 seconds to load, at least the user would be seeing a nice progress bar and my logo, instead of an empty grey screen.
But after making a custom loading screen, with just a few lines of code, the result is the same. The game shows an empty grey screen during 3-5 seconds, then shows my custom loading screen for just half a second, and it immediately loads the first game scene.
It's like if it was loading at least the two first scenes in the background by itself while showing this grey empty screen, so by the time it actually shows the loading screen, it's useless, as the next scene is already loaded.
I searched the forums, but the solution they usually talk about is exactly what I already did: insert an extra previous scene to load asynchronously the first scene.
So is there any way to handle this loading time when the app is opened? Maybe this asynchronous loading method only works fine between inner scenes, once the game is already running, and it's not meant to be used at the very beginning?
Thank you very much for your help.