mirror of
https://github.com/AxioDL/PrimeWorldEditor.git
synced 2025-07-03 03:36:10 +00:00
CScene: Make use of in-class initializers
This commit is contained in:
parent
ffbe857c2c
commit
0059558efc
@ -13,13 +13,7 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
CScene::CScene()
|
CScene::CScene()
|
||||||
: mSplitTerrain(true)
|
: mpSceneRootNode(new CRootNode(this, UINT32_MAX, nullptr))
|
||||||
, mRanPostLoad(false)
|
|
||||||
, mNumNodes(0)
|
|
||||||
, mpSceneRootNode(new CRootNode(this, -1, nullptr))
|
|
||||||
, mpArea(nullptr)
|
|
||||||
, mpWorld(nullptr)
|
|
||||||
, mpAreaRootNode(nullptr)
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -34,7 +28,7 @@ bool CScene::IsNodeIDUsed(uint32 ID) const
|
|||||||
return (mNodeMap.find(ID) != mNodeMap.end());
|
return (mNodeMap.find(ID) != mNodeMap.end());
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32 CScene::CreateNodeID(uint32 SuggestedID /*= -1*/) const
|
uint32 CScene::CreateNodeID(uint32 SuggestedID) const
|
||||||
{
|
{
|
||||||
if (SuggestedID != -1)
|
if (SuggestedID != -1)
|
||||||
{
|
{
|
||||||
@ -52,7 +46,7 @@ uint32 CScene::CreateNodeID(uint32 SuggestedID /*= -1*/) const
|
|||||||
return ID;
|
return ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
CModelNode* CScene::CreateModelNode(CModel *pModel, uint32 NodeID /*= -1*/)
|
CModelNode* CScene::CreateModelNode(CModel *pModel, uint32 NodeID)
|
||||||
{
|
{
|
||||||
if (pModel == nullptr) return nullptr;
|
if (pModel == nullptr) return nullptr;
|
||||||
|
|
||||||
@ -64,7 +58,7 @@ CModelNode* CScene::CreateModelNode(CModel *pModel, uint32 NodeID /*= -1*/)
|
|||||||
return pNode;
|
return pNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
CStaticNode* CScene::CreateStaticNode(CStaticModel *pModel, uint32 NodeID /*= -1*/)
|
CStaticNode* CScene::CreateStaticNode(CStaticModel *pModel, uint32 NodeID)
|
||||||
{
|
{
|
||||||
if (pModel == nullptr) return nullptr;
|
if (pModel == nullptr) return nullptr;
|
||||||
|
|
||||||
@ -76,7 +70,7 @@ CStaticNode* CScene::CreateStaticNode(CStaticModel *pModel, uint32 NodeID /*= -1
|
|||||||
return pNode;
|
return pNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
CCollisionNode* CScene::CreateCollisionNode(CCollisionMeshGroup *pMesh, uint32 NodeID /*= -1*/)
|
CCollisionNode* CScene::CreateCollisionNode(CCollisionMeshGroup *pMesh, uint32 NodeID)
|
||||||
{
|
{
|
||||||
if (pMesh == nullptr) return nullptr;
|
if (pMesh == nullptr) return nullptr;
|
||||||
|
|
||||||
@ -88,7 +82,7 @@ CCollisionNode* CScene::CreateCollisionNode(CCollisionMeshGroup *pMesh, uint32 N
|
|||||||
return pNode;
|
return pNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
CScriptNode* CScene::CreateScriptNode(CScriptObject *pObj, uint32 NodeID /*= -1*/)
|
CScriptNode* CScene::CreateScriptNode(CScriptObject *pObj, uint32 NodeID)
|
||||||
{
|
{
|
||||||
if (pObj == nullptr) return nullptr;
|
if (pObj == nullptr) return nullptr;
|
||||||
|
|
||||||
@ -114,7 +108,7 @@ CScriptNode* CScene::CreateScriptNode(CScriptObject *pObj, uint32 NodeID /*= -1*
|
|||||||
return pNode;
|
return pNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
CLightNode* CScene::CreateLightNode(CLight *pLight, uint32 NodeID /*= -1*/)
|
CLightNode* CScene::CreateLightNode(CLight *pLight, uint32 NodeID)
|
||||||
{
|
{
|
||||||
if (pLight == nullptr) return nullptr;
|
if (pLight == nullptr) return nullptr;
|
||||||
|
|
||||||
@ -180,7 +174,7 @@ void CScene::SetActiveArea(CWorld *pWorld, CGameArea *pArea)
|
|||||||
// Create nodes for new area
|
// Create nodes for new area
|
||||||
mpWorld = pWorld;
|
mpWorld = pWorld;
|
||||||
mpArea = pArea;
|
mpArea = pArea;
|
||||||
mpAreaRootNode = new CRootNode(this, -1, mpSceneRootNode);
|
mpAreaRootNode = new CRootNode(this, UINT32_MAX, mpSceneRootNode);
|
||||||
|
|
||||||
// Create static nodes
|
// Create static nodes
|
||||||
size_t Count = mpArea->NumStaticModels();
|
size_t Count = mpArea->NumStaticModels();
|
||||||
|
@ -25,16 +25,16 @@ class CScene
|
|||||||
{
|
{
|
||||||
friend class CSceneIterator;
|
friend class CSceneIterator;
|
||||||
|
|
||||||
bool mSplitTerrain;
|
bool mSplitTerrain = true;
|
||||||
bool mRanPostLoad;
|
bool mRanPostLoad = false;
|
||||||
|
|
||||||
uint32 mNumNodes;
|
uint32 mNumNodes = 0;
|
||||||
CRootNode *mpSceneRootNode;
|
CRootNode *mpSceneRootNode = nullptr;
|
||||||
std::unordered_map<ENodeType, std::vector<CSceneNode*>> mNodes;
|
std::unordered_map<ENodeType, std::vector<CSceneNode*>> mNodes;
|
||||||
|
|
||||||
TResPtr<CGameArea> mpArea;
|
TResPtr<CGameArea> mpArea;
|
||||||
TResPtr<CWorld> mpWorld;
|
TResPtr<CWorld> mpWorld;
|
||||||
CRootNode *mpAreaRootNode;
|
CRootNode *mpAreaRootNode = nullptr;
|
||||||
|
|
||||||
// Environment
|
// Environment
|
||||||
std::vector<CAreaAttributes> mAreaAttributesObjects;
|
std::vector<CAreaAttributes> mAreaAttributesObjects;
|
||||||
@ -49,13 +49,13 @@ public:
|
|||||||
|
|
||||||
// Scene Management
|
// Scene Management
|
||||||
bool IsNodeIDUsed(uint32 ID) const;
|
bool IsNodeIDUsed(uint32 ID) const;
|
||||||
uint32 CreateNodeID(uint32 SuggestedID = -1) const;
|
uint32 CreateNodeID(uint32 SuggestedID = UINT32_MAX) const;
|
||||||
|
|
||||||
CModelNode* CreateModelNode(CModel *pModel, uint32 NodeID = -1);
|
CModelNode* CreateModelNode(CModel *pModel, uint32 NodeID = UINT32_MAX);
|
||||||
CStaticNode* CreateStaticNode(CStaticModel *pModel, uint32 NodeID = -1);
|
CStaticNode* CreateStaticNode(CStaticModel *pModel, uint32 NodeID = UINT32_MAX);
|
||||||
CCollisionNode* CreateCollisionNode(CCollisionMeshGroup *pMesh, uint32 NodeID = -1);
|
CCollisionNode* CreateCollisionNode(CCollisionMeshGroup *pMesh, uint32 NodeID = UINT32_MAX);
|
||||||
CScriptNode* CreateScriptNode(CScriptObject *pObj, uint32 NodeID = -1);
|
CScriptNode* CreateScriptNode(CScriptObject *pObj, uint32 NodeID = UINT32_MAX);
|
||||||
CLightNode* CreateLightNode(CLight *pLight, uint32 NodeID = -1);
|
CLightNode* CreateLightNode(CLight *pLight, uint32 NodeID = UINT32_MAX);
|
||||||
void DeleteNode(CSceneNode *pNode);
|
void DeleteNode(CSceneNode *pNode);
|
||||||
void SetActiveArea(CWorld *pWorld, CGameArea *pArea);
|
void SetActiveArea(CWorld *pWorld, CGameArea *pArea);
|
||||||
void PostLoad();
|
void PostLoad();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user