📄 scenemanager.h
字号:
//////////////////////////////////////////////////////////////////////////
// CSceneManager类,场景管理类,负责整个场景的渲染和管理。
//
// SceneManager.h: CSceneManager类的声明
//
// Copy Rights Wonderful 2006
//////////////////////////////////////////////////////////////////////////
#ifndef __SCENEMANAGER_H_INCLUDED__
#define __SCENEMANAGER_H_INCLUDED__
#include "QuadTree.h"
//-------------------------------------------------------------------------------
// 前向声明
//-------------------------------------------------------------------------------
class CSceneObject;
//-------------------------------------------------------------------------------
// 场景管理器
//-------------------------------------------------------------------------------
class CSceneManager
{
public:
// 构造析构函数
CSceneManager();
~CSceneManager();
// 添加物体到场景中
bool AddObjectToScene(CSceneObject *obj);
// 添加物体到四叉树
bool AddObjectToQuadTree(CSceneObject *obj, float fWidth, float fHeight);
// 从场景中移除物体
void RemoveObjectFromScene(CSceneObject *obj);
// 渲染场景
void RenderScene();
// 获取四叉树
CQuadTree *GetQuadTree() { return &m_oQuadTree; }
protected:
typedef vector<CSceneObject *> ObjectList; // 场景物体列表类型
ObjectList m_ObjList; // 场景物体列表
CQuadTree m_oQuadTree; // 四叉树存储赛道
};
//-------------------------------------------------------------------------------
// 场景管理器全局对象
//-------------------------------------------------------------------------------
extern CSceneManager g_SceneManager;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -