I'm trying to optimise the loading times for my game, and create a non-static loading bar for the loading that does happen. Currently, an average level takes about 10 seconds to load (though I'm on an SSD with a decent CPU - a slower PC would take longer). The 10 second loading time is roughly split in two:
(A)the frame actually loading up after I "jump to frame" (no animated loading bar is possible at this stage - the previous frame completely freezes while the new frame loads)
(B) the frame has loaded and has begun executing (all the start of frame events get executed, the level gets created from an array in a big fastloop etc.......a loading bar is possible during this period)
To decrease A, I've selected "load on call" on many of my larger and/or animated objects (and deleted them from the frame editor, since "load on call" doesn't do anything otherwise - which is a quirk that I really dislike, but oh well).
For B, I'm doing what someone suggested to me a while ago: I've removed almost all "start of frame" conditions and replaced them with a fastloop ("initialisation"). This will enable me to immediate create a moving loading bar on start of frame that will be displayed even while the rest of the code (level being loaded, gameplay being setup, etc.) is still being parsed. This is what I've got:
Please login to see this picture.
Does what I'm doing seem right? Is there anything else I can do to further decrease loading times?