9#include <unordered_map>
66 template<
typename...
Args>
73 m_data.emplace_back(std::forward<Args>(
args)...);
83 throw std::runtime_error(
"Component not found for entity.");
Core ECS component definitions.
ComponentTypeID GetComponentTypeID_Static()
void RemoveComponent(EntityID entity) override
void AddComponent(EntityID entity, Args &&... args)
std::vector< EntityID > m_indexToEntity
bool HasComponent(EntityID entity) const
std::unordered_map< EntityID, size_t > m_entityToIndex
T & GetComponent(EntityID entity)