#pragma once #include struct DynamicBodyComponent { // --- dynamics parameters --- float maxSpeed_tpt; // tiles/tick float mainAcceleration_tptt; // tiles/tick² float maneuveringAcceleration_tptt; // tiles/tick² float maxAngularAcceleration_rptt; // rad/tick² float maxRotationSpeed_rpt; // rad/tick // --- integrated state --- QVector2D velocity_tpt; // tiles/tick float angularVelocity_rpt; // rad/tick // --- written each tick by MovementIntentSystem, consumed by DynamicBodySystem --- QVector2D linearAcceleration_tptt; // tiles/tick² float angularAcceleration_rptt; // rad/tick² };