Question
What is the standard or basic game screen/scene life cycle used in most games?
What is Screen/Scene?
The term screen or scene refers to the current displayed entity holder where game entities or objects are placed. I personally call it scene because the term screen for me is the hardware screen, but I have read that others call it screen as denoted by Screen Manager classes (I call it Scene Manager).
Understanding Scene Management and Game Scene Life Cycle
Here is my current understanding of a simple scene management and game scene life cycle:
Assuming, we have 4 screens/scenes in a basic game:
- Splash Scene - used to display the company logo, the game logo and loading of most of the game resources used by the menu scene and loading scene.
- Menu Scene - used to display menus and buttons, referred to as the "main menu" and the gateway to other scenes especially the game scene (sometimes there are settings scene, help scene and about scene).
- Loading Scene - used to display a progress bar or anything related that indicates the loading and unloading of the game scene.
- Game Scene - used to display the game logic and implementation of the game itself.
start application ---(load splash scene contents)---> splash scene ---(load menu scene and loading scene contents and unload splash scene contents)---> menu scene ("start game" pressed) ---> loading scene ---(load game scene contents)---> game scene ("return to main menu" pressed) ---> loading scene ---(unload game scene contents)---> menu scene
- Start Application
- Load Splash Scene Contents
- Show Splash Scene
- Load Menu Scene and Loading Scene Contents
- Hide Splash Scene
- Show Menu Scene
- Unload Splash Scene Contents
- "Start Game" Button Pressed
- Hide Menu Scene
- Show Loading Scene
- Load Game Scene Contents
- Hide Loading Scene
- Show Game Scene
- THE GAME IMPLEMENTATION
- "Return to Main Menu" Button Pressed
- Hide Game Scene
- Show Loading Scene
- Unload Game Scene Contents
- Hide Loading Scene
- Show Menu Scene
Is this the right way to do it in most cases? I know that the screen/scene life cycle varies depending on the game you are creating. I just want to know if this is the right way to do it or am I doing things the wrong way?