light/Engine/src/Engine/Scene/Entity.h
Light 9033ceffa1 Major changes
- Major maintenance
2021-07-29 17:12:13 +04:30

28 lines
No EOL
437 B
C++

#pragma once
#include "Base/Base.h"
#include "Scene.h"
#include <entt.hpp>
namespace Light {
class Entity
{
private:
entt::entity m_Handle;
Scene* m_Scene;
public:
Entity(entt::entity handle = entt::entity(), Scene* registry = nullptr);
~Entity();
template<typename T, typename... Args>
T& AddComponent(Args&&... args)
{
return m_Scene->m_Registry.emplace<T>(m_Handle, std::forward<Args>(args)...);
}
};
}