Concepts ECS
Entité
Une entité est un objet léger qui appartient au World.
Elle expose les opérations de composants directement, par exemple entity.addComponent(...) ou entity.getComponent(...).
Composant
Un composant est une classe qui hérite de Component.
Exemple:
import { Component } from "envy";
class PositionComponent extends Component {
x = 0;
y = 0;
z = 0;
}
Système
Un système contient le comportement.
Il lit les composants du monde via des requêtes comme world.query(PositionComponent), applique une logique, puis met à jour l'état nécessaire.
World
Le World est le centre du runtime.
Il permet de:
- créer et détruire des entités
- ajouter et retirer des composants via les entités
- enregistrer des systèmes
- exécuter la boucle de simulation
- interroger les entités et leurs composants avec
query(...)
Recommandation
Garde les composants petits et les systèmes spécialisés.
Cela rend les tests plus simples et l'évolution du code plus prévisible.