22 friend class SceneAttorney;
23 static SceneManager* ptrInstance;
26 SceneManager(
const SceneManager&) =
delete;
27 SceneManager& operator=(
const SceneManager&) =
delete;
28 ~SceneManager() =
default;
30 static SceneManager& Instance()
32 if (ptrInstance ==
nullptr)
33 ptrInstance =
new SceneManager();
57 void privInitializeScene();
62 friend class SceneAttorney;
87 static void EndScene() { Instance().privEndScene(); }
Base class for scene change strategies.
Definition SceneChangeStrategy.h:12
Represents a scene in the engine.
Definition Scene.h:32
static void EndScene()
Ends the current scene.
Definition SceneManager.h:87
static void SetNextScene(Scene *scene)
Sets the next scene to transition to.
Definition SceneManager.cpp:36
static Camera * GetCurrentCamera()
Gets the current camera.
Definition SceneManager.cpp:77
static void ChangeScene(Scene *scene)
Changes the current scene to the specified scene.
Definition SceneManager.cpp:45
static void Delete()
Deletes the SceneManager instance.
Definition SceneManager.cpp:19
static Terrain * GetTerrain()
Sets the terrain for the current scene.
Definition SceneManager.cpp:97
static void InitializeScene()
Initializes the current scene.
Definition SceneManager.h:72
static Camera * GetCurrentCamera2D()
Gets the current 2D camera.
Definition SceneManager.cpp:87
static Scene * GetCurrentScene()
Gets the current scene.
Definition SceneManager.cpp:31
static void SetCurrentScene(Scene *scene)
Sets the current scene.
Definition SceneManager.h:93
static void UpdateScene()
Updates the current scene.
Definition SceneManager.h:77
static void DrawScene()
Draws the current scene.
Definition SceneManager.h:82
static void SetCurrentCamera(Camera *cam)
Sets the current camera.
Definition SceneManager.cpp:82
Scene * DefaultScene
Pointer to the default scene.
Definition SceneManager.h:45
Scene * PrevScene
Pointer to the previous scene during scene transitions.
Definition SceneManager.h:50
SceneChangeStrategy * pSceneChangeStrategy
Pointer to the scene change strategy.
Definition SceneManager.h:55
static void SetCurrentCamera2D(Camera *cam)
Sets the current 2D camera.
Definition SceneManager.cpp:92
Scene * CurrentScene
Pointer to the current scene.
Definition SceneManager.h:40
Represents a 3D terrain generated from a heightmap.
Definition Terrain.h:18