3
\$\begingroup\$

I am at the stage of my game where I have to develop the loading screen. It's actually already there, but I don't know exactly what it should be loading while it's presented.

Why would I have a loading scene instead of just going directly to my game scene? I don't even know what else to load besides the textures with the texture SpriteCache.

Am I doing the correct content loading? I missing something to load during that loading scene?

\$\endgroup\$
11
\$\begingroup\$

Typically, the loading screen is presented so the user sees some kind of activity or indication that the game has not stalled while the game loads all the necessary data to play the level (or whatever), especially when loading the data might take a long time.

If your game can already go directly to the gameplay without an unpleasantly long delay, then you don't need to implement a loading screen.

\$\endgroup\$
  • \$\begingroup\$ Yeah but what Kind of classes or objects need to be loaded that would make seemless the delay of the game when it has to load? But I do understand the concept thanks. :) \$\endgroup\$ – user31088 Jul 11 '13 at 21:53
  • \$\begingroup\$ It's less about the type of data and more about the amount of it. \$\endgroup\$ – Josh Jul 12 '13 at 1:51
  • \$\begingroup\$ indeed, I see, thanks... I definately understand now. :) thanks for the help. \$\endgroup\$ – user31088 Jul 12 '13 at 16:33
0
\$\begingroup\$

I don't have experience in cocos-2d but in general during loading screen the game would load various assets. For example the textures, background music, sound effects files, video files if you have any or reading in any map/game data files. Some game may want to preconstruct some of the levels because they take a lot of time(e.g. randomly generated map) so once the player get into the game they don't need to wait for any loading screens anymore.

Preloading resources means that you can directly use those resources later in the game without the user waiting for them to be read in which improves the user experience. However you don't want to load every single assets you might need in the future. First is because you don't want to occupied a lot of memories for things that you might not need later. If you use too much memory the system may kill you off or it will actually affects the performance of the game due to paging. Second is startup time is one of the factors that affects user experience and generally player don't want to wait too long for starting up the game(they might just want to have a game when waiting for someone for a few minutes). In situation like this smoothing out the loading time by deferring loading or background loading may actually be a better idea.

In summary, deciding what to load during the loading screen depends on the specific game you are making. Keep tuning it until you satisfy with it :)

\$\endgroup\$
0
\$\begingroup\$

There's an implied question here: "When do I need to use a loading screen, and when can I do without?"

If your game is still small, you can probably let the player begin immediately with no delay. As your project grows, you might notice that the app "stalls" or hangs for a time before the game becomes responsive and the player can start playing.

If the delay before the game starts becomes noticeable, that's when you might need a loading screen. Find out what is slowing down the start of your game and do that during loading.

Of course, if you can keep everything fast enough that you never have a noticeable delay, so much the better - eliminate the loading screen entirely!

\$\endgroup\$
  • \$\begingroup\$ you think that the loading screen is not necessary then unless that delay becomes an issue... Thanks. its pretty much how I thought where to place it before a game starts or stuff like that but sometimes I remember seeing loading screen during a game, like Final Fantasy for example, that always made me wonder. Or like Metroid Prime Series, loading during the opening of doors, they tried it to look seemless. \$\endgroup\$ – user31088 Jul 13 '13 at 17:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy