mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-04-15 17:03:50 +00:00
TransportManager decomposition: - Extract TransportClockSync: server clock offset, yaw flip detection, velocity bootstrap, client/server mode switching - Extract TransportAnimator: spline evaluation, Z clamping, orientation from server yaw or spline tangent - Slim TransportManager to thin orchestrator delegating to ClockSync and Animator; add pushTransform() helper to deduplicate WMO/M2 renderer calls - Remove legacy orientationFromSplineTangent (now uses CatmullRomSpline::orientationFromTangent) Entity path following upgrade: - Replace pathPoints_/pathSegDists_ linear lerp with std::optional<CatmullRomSpline> activeSpline_ - startMoveAlongPath builds SplineKeys with distance-proportional timing - updateMovement evaluates CatmullRomSpline for smooth Catmull-Rom interpolation matching server-side creature movement - Reset activeSpline_ on setPosition/startMoveTo to prevent stale state Tests: - Add test_transport_components (9 cases): ClockSync client/server/reverse modes, yaw flip detection, Animator position eval, server yaw, Z clamping - Link spline.cpp into test_entity for CatmullRomSpline dependency Signed-off-by: Pavel Okhlopkov <pavel.okhlopkov@flant.com> |
||
|---|---|---|
| .. | ||
| CMakeLists.txt | ||
| test_activity_fsm.cpp | ||
| test_anim_capability.cpp | ||
| test_animation_ids.cpp | ||
| test_blp_loader.cpp | ||
| test_combat_fsm.cpp | ||
| test_dbc_loader.cpp | ||
| test_entity.cpp | ||
| test_frustum.cpp | ||
| test_indoor_shadows.cpp | ||
| test_locomotion_fsm.cpp | ||
| test_m2_structs.cpp | ||
| test_opcode_table.cpp | ||
| test_packet.cpp | ||
| test_spline.cpp | ||
| test_srp.cpp | ||
| test_transport_components.cpp | ||
| test_transport_path_repo.cpp | ||