No Name Engine
NoNameEngine est un moteur de jeu basé sur un système Entity Component System (ECS) utilisant Vulkan pour le rendu.
Loading...
Searching...
No Matches
NNE::AEntity Class Reference
Collaboration diagram for NNE::AEntity:

Public Member Functions

 AEntity ()
 Construit une entité vide.
 ~AEntity ()
 Détruit l'entité et ses composants.
int GetID ()
 Retourne l'identifiant unique de l'entité.
std::string GetName ()
 Renvoie le nom de l'entité.
void Awake ()
 Appelée lors de l'initialisation de l'entité.
void Start ()
 Appelée au démarrage de l'entité.
void Update (float delta)
 Met à jour l'entité à chaque frame.
void LateUpdate (float delta)
 Effectue les mises à jour tardives de l'entité.
template<typename T, typename... Args>
T * AddComponent (Args &&... args)
 Ajoute un composant de type T à l'entité.
template<typename T>
T * GetComponent ()
 Récupère le premier composant du type demandé.
template<typename T>
std::vector< T * > GetComponents ()
 Renvoie tous les composants du type demandé.

Public Attributes

NNE::Component::TransformComponenttransform
std::vector< NNE::Component::AComponent * > components

Protected Attributes

int _ID
std::string _Name

Detailed Description

Definition at line 10 of file AEntity.h.

Constructor & Destructor Documentation

◆ AEntity()

NNE::AEntity::AEntity ( )

Construit une entité vide.

Initialise l'entité avec un identifiant et un transform.

Definition at line 11 of file AEntity.cpp.

◆ ~AEntity()

NNE::AEntity::~AEntity ( )

Détruit l'entité et ses composants.

Détruit tous les composants attachés à l'entité.

Definition at line 22 of file AEntity.cpp.

Member Function Documentation

◆ AddComponent()

template<typename T, typename... Args>
T * NNE::AEntity::AddComponent ( Args &&... args)

Ajoute un composant de type T à l'entité.

Instancie et attache un composant à l'entité.

Definition at line 102 of file AEntity.h.

◆ Awake()

void NNE::AEntity::Awake ( )

Appelée lors de l'initialisation de l'entité.

Appelle Awake sur chaque composant.

Definition at line 46 of file AEntity.cpp.

◆ GetComponent()

template<typename T>
T * NNE::AEntity::GetComponent ( )

Récupère le premier composant du type demandé.

Recherche un composant du type donné.

Definition at line 117 of file AEntity.h.

◆ GetComponents()

template<typename T>
std::vector< T * > NNE::AEntity::GetComponents ( )

Renvoie tous les composants du type demandé.

Collecte tous les composants correspondant au type donné.

Definition at line 134 of file AEntity.h.

◆ GetID()

int NNE::AEntity::GetID ( )

Retourne l'identifiant unique de l'entité.

Retourne l'identifiant de l'entité.

Definition at line 35 of file AEntity.cpp.

◆ LateUpdate()

void NNE::AEntity::LateUpdate ( float delta)

Effectue les mises à jour tardives de l'entité.

Exécute les mises à jour tardives des composants non mono.

Definition at line 89 of file AEntity.cpp.

◆ Start()

void NNE::AEntity::Start ( )

Appelée au démarrage de l'entité.

Appelle Start sur tous les composants.

Definition at line 60 of file AEntity.cpp.

◆ Update()

void NNE::AEntity::Update ( float delta)

Met à jour l'entité à chaque frame.

Met à jour les composants non mono chaque frame.

Definition at line 74 of file AEntity.cpp.

Member Data Documentation

◆ _ID

int NNE::AEntity::_ID
protected

Definition at line 13 of file AEntity.h.

◆ _Name

std::string NNE::AEntity::_Name
protected

Definition at line 14 of file AEntity.h.

◆ components

std::vector<NNE::Component::AComponent*> NNE::AEntity::components

Definition at line 30 of file AEntity.h.

◆ transform

NNE::Component::TransformComponent* NNE::AEntity::transform

Definition at line 29 of file AEntity.h.


The documentation for this class was generated from the following files: