ShitEngine
基于 C++20 与 SDL3 的轻量级 2D 游戏引擎
载入中...
搜索中...
未找到
SceneManager类 参考final

场景管理器(单例) 更多...

#include <SceneManager.h>

Public 成员函数

 SceneManager (const SceneManager &)=delete
SceneManageroperator= (const SceneManager &)=delete
 SceneManager (SceneManager &&)=delete
SceneManageroperator= (SceneManager &&)=delete

静态 Public 成员函数

static SceneManagerGetInstance ()
static void Update ()
 更新当前场景
static void Destroy ()
 销毁所有场景
static void PushScene (std::unique_ptr< Scene > &&scene)
 压入新场景(下个帧循环生效)
static void PopScene ()
 弹出栈顶场景(下个帧循环生效)
static void ClearScene ()
 清空场景栈
static void ReplaceScene (std::unique_ptr< Scene > &&scene)
 替换栈顶场景

详细描述

场景管理器(单例)

使用栈结构管理场景生命周期。任何时候只有栈顶场景处于活跃状态。 所有操作延迟到 Update() 时执行,保证迭代安全。

用法: SceneManager::PushScene(std::move(myScene)); SceneManager::ReplaceScene(std::move(gameScene)); SceneManager::PopScene(); SceneManager::ClearScene();

构造及析构函数说明

◆ SceneManager() [1/2]

SceneManager ( const SceneManager & )
delete

◆ SceneManager() [2/2]

SceneManager ( SceneManager && )
delete

成员函数说明

◆ ClearScene()

void ClearScene ( )
inlinestatic

清空场景栈

◆ Destroy()

void Destroy ( )
inlinestatic

销毁所有场景

◆ GetInstance()

SceneManager & GetInstance ( )
static

◆ operator=() [1/2]

SceneManager & operator= ( const SceneManager & )
delete

◆ operator=() [2/2]

SceneManager & operator= ( SceneManager && )
delete

◆ PopScene()

void PopScene ( )
inlinestatic

弹出栈顶场景(下个帧循环生效)

◆ PushScene()

void PushScene ( std::unique_ptr< Scene > && scene)
inlinestatic

压入新场景(下个帧循环生效)

◆ ReplaceScene()

void ReplaceScene ( std::unique_ptr< Scene > && scene)
inlinestatic

替换栈顶场景

◆ Update()

void Update ( )
inlinestatic

更新当前场景


该类的文档由以下文件生成: