BREAKING CHANGE: Movement now runs on deterministic 120Hz physics - Physics and render states separated - Visual interpolation for smoothness - Deterministic physics independent of FPS Added: - Dual state system (Physics vs Render) - Fixed timestep accumulator pattern - Interpolation between physics states - MaxAccumulatorTime to prevent spiral of death - PhysicsTickRate config in TengriMovementConfig - Debug HUD displays for physics rate and alpha Changed: - TickComponent() now accumulates time and runs physics in loop - All movement logic moved to TickPhysics() - Velocity → PhysicsVelocity for clarity - SetActorLocation/Rotation moved to ApplyRenderState() Performance: - Added ~0.27ms per frame at 60 FPS - Physics deterministic and reproducible - Smooth visuals at 30-240 FPS tested Tests: - FT_FixedTimestep automated tests - Manual testing checklist completed - Determinism verified across multiple runs Documentation: - TDD.md updated with fixed timestep section - Stage12_DecisionLog.md created - Inline comments for all new methods Refs: Roadmap.md Stage 12 |
||
|---|---|---|
| .. | ||
| Movement | ||
| TengriPlatformer.Build.cs | ||
| TengriPlatformer.cpp | ||
| TengriPlatformer.h | ||