JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
hmi::PreviousPosition Struct Reference

Position d'une entité au pas de simulation précédent, pour l'interpolation de rendu (EX-ARCH-031). More...

#include <PreviousPosition.h>

Public Attributes

core::Vector2 value {}
 Position de l'entité (coin haut-gauche, unités monde) telle que laissée par le pas précédent.

Detailed Description

Position d'une entité au pas de simulation précédent, pour l'interpolation de rendu (EX-ARCH-031).

La simulation avance par pas fixes discrets (core::FixedTimestep, Boucle de jeu et pas de temps fixe) tandis que le rendu redessine une fois par frame réelle, souvent plus fréquente (écran 120/144 Hz). Sans interpolation, une entité en mouvement continu (personnage, danger mobile, bloc poussé) apparaît par « à-coups » figés à sa dernière position simulée. En conservant la position du pas précédent en plus de la position courante (core::Transform), SpriteRenderer peut dessiner l'entité à lerp(précédente, courante, alpha)alpha ∈ [0, 1[ est le facteur d'interpolation fourni par core::FixedTimestep::interpolationAlpha — un mouvement lisse quel que soit le framerate de rendu.

C'est un composant de présentation (hmi, jamais core) : il vit néanmoins dans le core::World (générique sur le type de composant), écrit par HMI (hmi::GameSession recopie la position courante vers ce champ au début de chaque pas) et lu par HMI (hmi::SpriteRenderer). Core l'ignore totalement — aucune règle de simulation n'en dépend, la frontière HMI → Core reste intacte (EX-NFR-010, EX-ARCH-012). Une entité sans ce composant (les tuiles fixes, l'immense majorité) est simplement dessinée à sa position courante, sans interpolation.

Member Data Documentation

◆ value

core::Vector2 hmi::PreviousPosition::value {}

Position de l'entité (coin haut-gauche, unités monde) telle que laissée par le pas précédent.


The documentation for this struct was generated from the following file:
  • /home/runner/work/JustAnotherDnDGame/JustAnotherDnDGame/Source/HMI/Graphics/PreviousPosition.h