Rôle des systèmes d'entités.

Les systèmes d'entités ont pour but de remettre à jour les différentes propriété des entités.
Il existe deux type de systèmes :

  • Les timers : Ceux-ci ont pour but de remettre à jour les entités tout les x laps de temps.
  • Les worker : Ceux-ci ont pour but de remettre à jour les entités lorsqu'un certaine condition a été remplie.

Le timer et le worker par défaut.

Comme pour les entités et le gestionnaires d'entité, le framework possède un worker et un timer par défaut.
Le timer par défaut est la classe odfaeg::graphic::AnimUpdater, le constructeur prend une viariable booléenne,
si on passe true, un thread sera utilisé pour remettre à jour les entités!
Cette classe possède une méthode pour ajouter des animations (La méthode addAnim), cette classe possède aussi une méthode interne
qui est chargée de chercher tout les x interval de temps si il faut remettre des animations à jours en fonction du framerate
des animations.
Pour que les animations puissent se remettrent à jour il faut ajouter le timer au monde, ceci se fait en appelant la
méthode addTimer de la classe odfaeg::graphic::World.

Le worker par défaut est la classe odfaeg::graphic::EntitiesUpdater
Cette classe ne fait rien d'autre que d'appeler la méthode checkVisibleEntities de la classe statique odfaeg::graphic::World.
Le worker va donc rechercher les entités qui se trouve dans le champ de vision des vues de la fenêtre de rendu et des composants
de rendus!
Pour ajouter un worker au monde il faut appeler la méthode addWorker.
Si l'on veut mettre à jour la scene car par exemple la vue à changé, alors, il faut appeler la méthode update de la classe work.