CmSceneManager.cpp 533 B

123456789101112131415161718192021222324252627
  1. #include "CmSceneManager.h"
  2. #include "CmGameObject.h"
  3. namespace CamelotEngine
  4. {
  5. SceneManager::SceneManager()
  6. {
  7. mRootNode = GameObject::createInternal("SceneRoot");
  8. }
  9. SceneManager::~SceneManager()
  10. {
  11. if(mRootNode != nullptr)
  12. mRootNode->destroy();
  13. }
  14. void SceneManager::registerNewGO(GameObjectPtr node)
  15. {
  16. if(mRootNode) // If root node is null, then this new node is the root node
  17. node->setParent(mRootNode);
  18. }
  19. SceneManager& gSceneManager()
  20. {
  21. return SceneManager::instance();
  22. }
  23. }