• [^] # Re: Moteur de rendu

    Posté par . En réponse au journal entity.JS - un "Entity System" en JavaScript. Évalué à 2.

    Par exemple, comment implémenter un scenegraph avec des composants qui permet d'avoir des sous objets dont la position dépend d'un objet parent ?

    Une possibilité :

    composant Transformation
     vec2 localPosition, worldPosition;
     float localRotation, worldRotation;
     Entity parent; // optionnel
    
    

    Les coordonnées local* sont définies dans le repère du parent.
    Les systèmes qui veulent modifier la position d'une entité manipulent les attributs local*.
    Le système de Transformation détermine les attributs world* en fonction de local* et du parent si il y en a un), sinon world* = local*