A very simple solution is to draw, not visualize. Let me clarify, you stop playing the game, show the loading screen at boot time, and then give it about 2 seconds to make the new screen as follows:
if(renderingGame){ //render all your stuff if(loading){ renderingGame = false; }else if(loading){ renderLoadingScreen(); }else(!loading){ elapsedTime += Gdx.graphics.getDelta(); } if(elapsedTime > 3) renderingGame = true;
source share