Loading Screen

While the game is loading (initGame, initSystem) a lot of time passes. Is there any way do display something like a loading screen with a fancy progress bar or something like that? Or maybe not display the window until that time passes?



Seems like something someone shoudl've done somewhere in the past. Thanks for any help in advance! :slight_smile:

I've worked it out that I show a spash screen on game load with a swing based progress bar. This itself loads very quickly.



Then in a separate thread I load all my models and big textures, updating via a queue for the AWT thread to update the progress bar as stuff gets loaded.



Finally I then queue up a final step that adds all the loaded stuff to the root node in an update (render) loop, thus keeping everything thread safe, allowing the user to still move the mouse cursor (so they don't thinking things are locked up) and giving user feedback (to keep the user from thinking things are locked up… :))



Although I use a self-rolled thing you should also take a look at com.jmex.game.state and in com.jme.util for GameTask and GameTaskQueue.

Could I just have a separate node and then draw it? Like this:



Node loadingNode = new Node();

Quad loadQuad = new Quad("Loading");

loadingNode.attachChild(loadQuad);

//add texture stuff here

display.getRenderer().draw(loadingNode);



In the initSystem, maybe a new draw every step of the way, with captions like "loading maps".



Or at least something of the like, maybe call update and render manually in initGame(). Feels like cheating, and gives me exceptions, but is it possible to fix that? And cheat like this?

cough

LoadingGameState

cough

TestLoadingGameState

cough



Wow, excuse me…it's getting cold around here…must be getting sick. :wink:

i'm just having this image of a coughing frog in my mind and i have to say it's very funny…

lol. you don't miss a chance to advertise  }:-@

Hey, when there are people ill-informed of the great features I've created it's my duty! :-p

man… you can be sick… I suggest that you should see a doctor…

I think that it should be some kind of "monkey illness"  :D  :D  :smiley:



uhauhahuahuahuahua  :smiley: