(Feat) Add footsteps

This commit is contained in:
2026-08-11 15:23:10 +02:00
parent e8e128457a
commit 176beab9fc
4776 changed files with 18806 additions and 121 deletions
@@ -43,15 +43,65 @@ protected:
UPROPERTY(BlueprintReadOnly, Category = "Movement")
bool bIsMoving = false;
/**
* Intention brute de sprint : la touche est enfoncee, rien de plus.
*
* NE PAS la brancher sur une transition de la machine a etats -- c'est
* exactement ce qui faisait courir les bras d'un joueur immobile qui appuyait
* sur Maj. Elle reste publiee parce qu'elle est la seule a dire ce que le
* joueur VEUT (un effet de FOV, un cout de stamina) ; pour l'animation, c'est
* bIsRunning qu'on lit.
*/
UPROPERTY(BlueprintReadOnly, Category = "Movement")
bool bIsSprinting = false;
/**
* Sprint EFFECTIF : au sol, debout, et le joueur avance pour de bon.
*
* Toute la composition est faite ici, en un seul endroit, plutot que
* reconstruite dans chaque transition du Blueprint. Une machine a etats a
* autant d'entrees vers Run que d'etats voisins ; recomposer la condition a
* la main dans chacune, c'est se garantir d'en oublier une.
*/
UPROPERTY(BlueprintReadOnly, Category = "Movement")
bool bIsRunning = false;
/** Deplacement au sol, debout, sans sprint. Complementaire exact de bIsRunning. */
UPROPERTY(BlueprintReadOnly, Category = "Movement")
bool bIsWalking = false;
UPROPERTY(BlueprintReadOnly, Category = "Movement")
bool bIsFalling = false;
/**
* Vitesse verticale signee (cm/s), positive vers le haut.
*
* C'est elle, et pas bIsFalling, qui distingue un saut d'une chute : le
* moteur appelle « falling » tout ce qui n'est pas au sol, donc sortir d'un
* rebord jouerait l'animation de detente si on se fiait au seul booleen.
*/
UPROPERTY(BlueprintReadOnly, Category = "Movement")
float VerticalSpeed = 0.f;
UPROPERTY(BlueprintReadOnly, Category = "Movement")
bool bIsCrouching = false;
/**
* Le joueur tient un objet VISIBLE dans la main.
*
* A brancher sur un « Blend Poses by bool » A L'INTERIEUR de l'etat de
* deplacement, jamais sur une transition vers un etat jumeau. Deux etats
* « marche avec » et « marche sans » doubleraient la machine et, surtout,
* equiper un outil en pleine course claquerait d'un cycle a l'autre. Un blend
* fond les deux poses, l'outil apparaissant pendant que la foulee continue.
*
* C'est le nombre de MESHES montes qu'elle reflete, pas le contenu de la case
* active : la plupart des ressources n'ont pas bShowInHand, et les tenir ne
* doit pas changer la posture des bras.
*/
UPROPERTY(BlueprintReadOnly, Category = "Held Item")
bool bHasItemInHand = false;
/**
* Vitesse de lecture du cycle de deplacement, a brancher sur la broche
* Play Rate du noeud d'animation.