GameScreen or GameState?

Jan 17, 2008 at 12:55 AM
Edited Jan 17, 2008 at 1:07 AM

Did you think about game state management or game screen managment, like: Introdution -> Options -> Play -> Pause -> Options? I found everything reading Compositor source, but have only screen layers and transition state?

Jan 17, 2008 at 4:23 PM
We have an issue started for a 'Screen Manager'. I'm guessing the screen manager will dictate which things have the focus of the input system, and within screens you'll be able to have specific HUDs/Screens. In essense I believe we'll have a menu type system.
Jan 20, 2008 at 6:03 PM
Edited Jan 20, 2008 at 6:05 PM

I have somes question about Composite and Screen system. I trying integrated game state manager on QS, but but, somethings isn´t make cense to me. Why ScreenCompositor is called by QSGame? To me this responsability must be GameScreen. If we create a new class if responsability of load content, read input to change game state, introdution to game, game to pause, pause to game, etc... It stay much better. the user of engine, need only implement a new IScreen interface to draw game data and inherit of this class to have an state, like introdution screen, with all content. Perhaps the game must have only the active ScreenComposite. What you think about this?

sorry my poor english.
Jan 23, 2008 at 12:14 PM

Sorry my miss unsderstant, about SceneManager and Compositor, i didn´t see how thing really work, but now i think understood. Ok. What you think to create a basic Scene types, like: Introdution, Options, Credits, etc, to allow more speedup scene creation, this would be used on Scene editor.
Jan 23, 2008 at 2:23 PM
I haven't had a chance to look at the screen system myself. I believe either Sturm or Shaw worked on it, they might have a better idea on how to answer your questions. I'm not sure if we'd want to create custom types because the developer might want their own types, or want them in a different way. Usually an engine gives you the ability to do things much more easily, but you still have to do the work to make those things.
Jan 23, 2008 at 3:34 PM
The scene editor tool is still a long ways off.

Right now there isn't a game state management solution in place. It's something I eventually want to include, potentially interfacing with the Compositor, but I still need to consider the options there. The Compositor will be getting a little rework for 0.20, but it's basic job is to allow rendering of a mixture of the scene and overlays. For an example of this functionality, look at the current change set. The Compositor holds 4 IScreen interfaces, the main scene, the logo overlay, the FPS overlay, and the debug output overlay. It is in charge of managing the rendering order and blending of each IScreen. It will also eventually be used to implement post-processing effects.