Untitled Game engine no.5  1.0
Scene.hpp
1 #ifndef SCENE_HPP
2 #define SCENE_HPP
3 
4 #include "ECS.hpp"
5 
6 namespace Engine {
7  class Entity;
9  class Scene {
10  public:
12  Scene();
13 
15  ~Scene();
16 
19  Entity CreateEntity(bool empty = false, const Ref<Transform>& tf = nullptr);
20 
22  void DestroyEntity(Entity entity);
23 
24  ECS GetECS() const {return m_ecs;};
25 
26  private:
27  // we want the entity to be able to get our ecs
28  friend class Entity;
29 
31  ECS m_ecs;
32  };
33 }
34 #endif
Engine::ECS
Entity Component System.
Definition: ECS.hpp:19
Engine::Scene::~Scene
~Scene()
Destructor.
Definition: Scene.cpp:34
Engine::Scene
A container for entities currently in the Scene.
Definition: Scene.hpp:9
Engine::Scene::DestroyEntity
void DestroyEntity(Entity entity)
Destroy given entity.
Definition: Scene.cpp:48
Engine::Ref
std::shared_ptr< T > Ref
Has stuff for making references a lot more easily shared smart pointer.
Definition: Base.hpp:21
Engine::Scene::CreateEntity
Entity CreateEntity(bool empty=false, const Ref< Transform > &tf=nullptr)
Definition: Scene.cpp:38
Engine::Scene::Scene
Scene()
Constructor.
Definition: Scene.cpp:11
Engine
Definition: Animation.hpp:14
Engine::Entity
Definition: Entity.hpp:6