feat(physics): A6.P1 — instrument FindCollisions with [push-back-disp]
Wires LogPushBackDispatch into the modern FindCollisions overload at the entry block (after path/collisions/obj locals + movement computed). Legacy overload at line ~1895 delegates to modern, so single instrumentation site covers all dispatches. returnState=-1 sentinel marks "entry log" — A6.P2 analysis pairs each entry with subsequent [push-back] adjust-sphere lines and the eventual return state. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
2d1f27d647
commit
35631d1ec0
1 changed files with 17 additions and 0 deletions
|
|
@ -1611,6 +1611,23 @@ public static class BSPQuery
|
|||
|
||||
var movement = sphere0.Center - localCurrCenter;
|
||||
|
||||
// A6.P1: snapshot dispatcher entry for the [push-back-disp] probe.
|
||||
// Emitted before path selection so the captured state reflects
|
||||
// the inputs the dispatcher routes on. The returnState=-1 sentinel
|
||||
// marks "entry log" — A6.P2 analysis pairs entry with the
|
||||
// subsequent [push-back] adjust-sphere lines and inferred return.
|
||||
if (PhysicsDiagnostics.ProbePushBackEnabled)
|
||||
{
|
||||
PhysicsDiagnostics.LogPushBackDispatch(
|
||||
sphereCenter: sphere0.Center,
|
||||
movement: movement,
|
||||
collide: path.Collide,
|
||||
insertType: (int)path.InsertType,
|
||||
objState: unchecked((int)obj.State),
|
||||
walkInterpEntry: path.WalkInterp,
|
||||
returnState: -1);
|
||||
}
|
||||
|
||||
// Helper: transform a local-space vector to world space.
|
||||
// ACE: path.LocalSpacePos.LocalToGlobalVec(v)
|
||||
Vector3 L2W(Vector3 v) => Vector3.Transform(v, localToWorld);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue