Wraith
0.1.5
Basic 3D game engine in C++
|
Manager for scenes. Allows access for current scene and setting scenes to use More...
#include <SceneManager.h>
Static Public Member Functions | |
static void | SetStartScene (Scene *pScene) |
Sets a start scene to begin with. More... | |
static void | SetNextScene (Scene *pScene) |
Sets the next scene to change to. More... | |
static Scene * | GetCurrentScene () |
Gets the current scene. More... | |
Private Types | |
enum class | SceneChangeState { PENDING_SCENE_CHANGE , NO_SCENE_CHANGE } |
Private Member Functions | |
SceneManager (const SceneManager &)=delete | |
SceneManager & | operator= (const SceneManager &)=delete |
SceneManager (SceneManager &&)=delete | |
SceneManager & | operator= (SceneManager &&)=delete |
void | privSetStartScene (Scene *) |
void | privSetNextScene (Scene *) |
Scene * | privGetCurrentScene () const |
void | privInitializeStartScene () const |
void | privUpdate () |
void | privDraw () const |
void | privChangeScene (Scene *) |
Static Private Member Functions | |
static SceneManager & | GetInstance () |
static void | InitializeStartScene () |
Initializes the starting scene. More... | |
static void | Update () |
Calls Scene::update() on current scene. More... | |
static void | Draw () |
Calls Scene::draw() on current scene. More... | |
static void | ChangeScene (Scene *pScene) |
Changes to particular scene. More... | |
static void | Delete () |
Private Attributes | |
Scene * | _pCurrentScene |
SceneChangeNullCommand * | _pSceneChangeNullCommand |
SceneChangeCommand * | _pSceneChangeCommand |
SceneManagerCommand * | _pCurrentSceneCommand |
SceneChangeState | _currentSceneChangeState |
Static Private Attributes | |
static SceneManager * | pSceneManagerInstance = nullptr |
Friends | |
class | SceneManagerAttorney |
Manager for scenes. Allows access for current scene and setting scenes to use
|
inlinestaticprivate |
Changes to particular scene.
pScene | the pointer scene in which to change to. |
|
inlinestaticprivate |
Calls Scene::draw() on current scene.
ONLY called by Wraith::Draw() through SceneManagerAttorney.
|
inlinestaticprivate |
Initializes the starting scene.
ONLY called by Wraith::LoadContent() through SceneManagerAttorney.
|
inlinestaticprivate |
Calls Scene::update() on current scene.
ONLY called by Wraith::update() through SceneManagerAttorney.