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

Paramètres réglables de la physique du personnage, regroupés pour faciliter le tuning. More...

#include <PhysicsConfig.h>

Public Attributes

float moveSpeed = 3.0f
 Vitesse horizontale à pleine intention, en unités/seconde (EX-GP-010). ⚠️ à affiner.
float gravity = 50.0f
 Accélération de la gravité, en unités/seconde². ⚠️ à affiner au ressenti.
float fallDragCoefficient = 3.6f
 Coefficient de traînée verticale en chute, en 1/s (EX-GP-019).
float jumpSpeed = 15.0f
 Vitesse verticale de l'impulsion de saut, en unités/seconde (montée).
float coyoteTime = 0.08f
 Fenêtre de coyote time, en secondes : saut permis peu après avoir quitté un bord. ⚠️.
float jumpBufferTime = 0.12f
 Fenêtre de jump buffering, en secondes : saut pré-appuyé honoré à l'atterrissage. ⚠️.
float jumpCutFactor = 0.5f
 Fraction de vitesse ascendante conservée au relâchement du saut (hauteur variable) : 0 = coupe nette, 1 = pas de coupe.
int airJumps = 1
 Nombre de sauts aériens supplémentaires (double/multi saut, EX-GP-015). Défaut 1.
float wallSlideSpeed = 4.0f
 Vitesse de descente plafonnée le long d'un mur (wall slide), en unités/s. ⚠️.
float wallJumpSpeedX = 12.0f
 Composante horizontale de l'impulsion de wall jump (éjection opposée au mur), unités/s.
float wallJumpSpeedY = 14.0f
 Composante verticale (montée) de l'impulsion de wall jump, en unités/s.
float wallJumpLockTime = 0.18f
 Durée (secondes) de verrouillage du contrôle horizontal après un wall jump. ⚠️.
float dashSpeed = 15.0f
 Vitesse de la ruée de dash, en unités/s (EX-GP-017). ⚠️.
float dashDuration = 0.15f
 Durée (secondes) du dash ; distance ≈ dashSpeed × dashDuration. ⚠️.
int dashCharges = 1
 Nombre de dashs utilisables entre deux contacts avec le sol (EX-GP-017, EX-GP-055).
float fallGravityMultiplier = 1.8f
 Multiplicateur de gravité en chute (> 1) : la chute est plus rapide que la montée (EX-GP-018).
float apexThreshold = 4.0f
 Seuil de vitesse verticale (unités/s) sous lequel on est « à l'apex » (flottement). ⚠️.
float apexGravityMultiplier = 0.5f
 Multiplicateur de gravité près de l'apex (< 1) : contrôle flottant au sommet. ⚠️.
float fastFallMultiplier = 1.6f
 Multiplicateur de gravité supplémentaire en chute quand « bas » est maintenu (fast-fall, > 1).
float dashChargeHoldTime = 0.25f
 Seuil (secondes) de maintien de la direction opposée pour armer un dash boosté (EX-GP-056).
float dashBoostSpeedMultiplier = 1.5f
 Multiplicateur de vitesse d'un dash boosté (EX-GP-056), appliqué à dashSpeed. ⚠️.
float dashBoostDurationMultiplier = 1.3f
 Multiplicateur de durée d'un dash boosté (EX-GP-056), appliqué à dashDuration. ⚠️.
float groundPoundSpeed = 30.0f
 Vitesse de chute imposée pendant un ground pound (EX-GP-058), en unités/s ; nettement au-delà de la vitesse terminale normale pour un impact net.
float dashJumpLockTime = 0.12f
 Durée (secondes) du verrou horizontal après un jump-cancel de dash (EX-GP-061) : pendant ce temps, la vitesse horizontale conservée du dash n'est pas écrasée par le contrôle normal (même rôle que wallJumpLockTime).
float comboWindowTime = 0.3f
 Fenêtre (secondes) pendant laquelle des jump-cancels rapprochés cumulent un bonus de vitesse (EX-GP-061).
float comboSpeedBonus = 2.0f
 Bonus de vitesse (unités/s) ajouté par enchaînement de jump-cancels rapprochés (EX-GP-061), multiplié par Player::comboChainCount.
float comboSpeedCap = 8.0f
 Plafond (unités/s) du bonus cumulé de combo, quel que soit le nombre d'enchaînements (EX-GP-061) — protège l'équilibrage des niveaux.
float pushMomentumWindowTime = 0.25f
 Fenêtre (secondes) pendant laquelle un saut hérite de la vitesse d'une poussée renforcée récente (EX-GP-057/EX-GP-061).
float momentumCarryRatio = 0.5f
 Fraction de la vitesse d'un bloc poussé (poussée renforcée) héritée par le saut suivant, si déclenché dans pushMomentumWindowTime (EX-GP-061).

Detailed Description

Paramètres réglables de la physique du personnage, regroupés pour faciliter le tuning.

Donnée pure (EX-ARCH-011) : le système de déplacement la lit, ne la modifie pas. Les valeurs par défaut sont des points de départ à affiner par tests (le ressenti « game feel » est marqué ⚠️ dans la spec gameplay.md). Unités monde : une tuile = 1 unité, y vers le bas.

Member Data Documentation

◆ airJumps

int core::PhysicsConfig::airJumps = 1

Nombre de sauts aériens supplémentaires (double/multi saut, EX-GP-015). Défaut 1.

◆ apexGravityMultiplier

float core::PhysicsConfig::apexGravityMultiplier = 0.5f

Multiplicateur de gravité près de l'apex (< 1) : contrôle flottant au sommet. ⚠️.

◆ apexThreshold

float core::PhysicsConfig::apexThreshold = 4.0f

Seuil de vitesse verticale (unités/s) sous lequel on est « à l'apex » (flottement). ⚠️.

◆ comboSpeedBonus

float core::PhysicsConfig::comboSpeedBonus = 2.0f

Bonus de vitesse (unités/s) ajouté par enchaînement de jump-cancels rapprochés (EX-GP-061), multiplié par Player::comboChainCount.

⚠️.

◆ comboSpeedCap

float core::PhysicsConfig::comboSpeedCap = 8.0f

Plafond (unités/s) du bonus cumulé de combo, quel que soit le nombre d'enchaînements (EX-GP-061) — protège l'équilibrage des niveaux.

⚠️.

◆ comboWindowTime

float core::PhysicsConfig::comboWindowTime = 0.3f

Fenêtre (secondes) pendant laquelle des jump-cancels rapprochés cumulent un bonus de vitesse (EX-GP-061).

⚠️.

◆ coyoteTime

float core::PhysicsConfig::coyoteTime = 0.08f

Fenêtre de coyote time, en secondes : saut permis peu après avoir quitté un bord. ⚠️.

◆ dashBoostDurationMultiplier

float core::PhysicsConfig::dashBoostDurationMultiplier = 1.3f

Multiplicateur de durée d'un dash boosté (EX-GP-056), appliqué à dashDuration. ⚠️.

◆ dashBoostSpeedMultiplier

float core::PhysicsConfig::dashBoostSpeedMultiplier = 1.5f

Multiplicateur de vitesse d'un dash boosté (EX-GP-056), appliqué à dashSpeed. ⚠️.

◆ dashChargeHoldTime

float core::PhysicsConfig::dashChargeHoldTime = 0.25f

Seuil (secondes) de maintien de la direction opposée pour armer un dash boosté (EX-GP-056).

⚠️ à affiner.

◆ dashCharges

int core::PhysicsConfig::dashCharges = 1

Nombre de dashs utilisables entre deux contacts avec le sol (EX-GP-017, EX-GP-055).

Défaut 1 : un seul dash par saut, le comportement historique.

◆ dashDuration

float core::PhysicsConfig::dashDuration = 0.15f

Durée (secondes) du dash ; distance ≈ dashSpeed × dashDuration. ⚠️.

◆ dashJumpLockTime

float core::PhysicsConfig::dashJumpLockTime = 0.12f

Durée (secondes) du verrou horizontal après un jump-cancel de dash (EX-GP-061) : pendant ce temps, la vitesse horizontale conservée du dash n'est pas écrasée par le contrôle normal (même rôle que wallJumpLockTime).

⚠️.

◆ dashSpeed

float core::PhysicsConfig::dashSpeed = 15.0f

Vitesse de la ruée de dash, en unités/s (EX-GP-017). ⚠️.

◆ fallDragCoefficient

float core::PhysicsConfig::fallDragCoefficient = 3.6f

Coefficient de traînée verticale en chute, en 1/s (EX-GP-019).

La vitesse terminale émerge de l'équilibre poids/traînée (poids = masse × gravité effective) plutôt que d'être plafonnée : à masse par défaut (1,0), 90 / 3.6 = 25 unités/s, continuité avec l'ancien plafond fixe. ⚠️ à affiner.

◆ fallGravityMultiplier

float core::PhysicsConfig::fallGravityMultiplier = 1.8f

Multiplicateur de gravité en chute (> 1) : la chute est plus rapide que la montée (EX-GP-018).

⚠️ à affiner (~1,8).

◆ fastFallMultiplier

float core::PhysicsConfig::fastFallMultiplier = 1.6f

Multiplicateur de gravité supplémentaire en chute quand « bas » est maintenu (fast-fall, > 1).

⚠️ à affiner (~1,6).

◆ gravity

float core::PhysicsConfig::gravity = 50.0f

Accélération de la gravité, en unités/seconde². ⚠️ à affiner au ressenti.

◆ groundPoundSpeed

float core::PhysicsConfig::groundPoundSpeed = 30.0f

Vitesse de chute imposée pendant un ground pound (EX-GP-058), en unités/s ; nettement au-delà de la vitesse terminale normale pour un impact net.

⚠️ à affiner.

◆ jumpBufferTime

float core::PhysicsConfig::jumpBufferTime = 0.12f

Fenêtre de jump buffering, en secondes : saut pré-appuyé honoré à l'atterrissage. ⚠️.

◆ jumpCutFactor

float core::PhysicsConfig::jumpCutFactor = 0.5f

Fraction de vitesse ascendante conservée au relâchement du saut (hauteur variable) : 0 = coupe nette, 1 = pas de coupe.

⚠️ à affiner (~0,5).

◆ jumpSpeed

float core::PhysicsConfig::jumpSpeed = 15.0f

Vitesse verticale de l'impulsion de saut, en unités/seconde (montée).

Avec gravity = 50, ~2,25 tuiles de hauteur / apex ~0,3 s. ⚠️ à affiner (viser ~2,5 tuiles, apex ~0,35 s).

◆ momentumCarryRatio

float core::PhysicsConfig::momentumCarryRatio = 0.5f

Fraction de la vitesse d'un bloc poussé (poussée renforcée) héritée par le saut suivant, si déclenché dans pushMomentumWindowTime (EX-GP-061).

⚠️.

◆ moveSpeed

float core::PhysicsConfig::moveSpeed = 3.0f

Vitesse horizontale à pleine intention, en unités/seconde (EX-GP-010). ⚠️ à affiner.

◆ pushMomentumWindowTime

float core::PhysicsConfig::pushMomentumWindowTime = 0.25f

Fenêtre (secondes) pendant laquelle un saut hérite de la vitesse d'une poussée renforcée récente (EX-GP-057/EX-GP-061).

⚠️.

◆ wallJumpLockTime

float core::PhysicsConfig::wallJumpLockTime = 0.18f

Durée (secondes) de verrouillage du contrôle horizontal après un wall jump. ⚠️.

◆ wallJumpSpeedX

float core::PhysicsConfig::wallJumpSpeedX = 12.0f

Composante horizontale de l'impulsion de wall jump (éjection opposée au mur), unités/s.

◆ wallJumpSpeedY

float core::PhysicsConfig::wallJumpSpeedY = 14.0f

Composante verticale (montée) de l'impulsion de wall jump, en unités/s.

◆ wallSlideSpeed

float core::PhysicsConfig::wallSlideSpeed = 4.0f

Vitesse de descente plafonnée le long d'un mur (wall slide), en unités/s. ⚠️.


The documentation for this struct was generated from the following file:
  • /home/runner/work/JustAnotherDnDGame/JustAnotherDnDGame/Source/Core/Physics/PhysicsConfig.h