feat(render): Phase A8.F — wire camera-collision probe + cell/self id into GameWindow
Both RetailChaseCamera construction sites now supply CollisionProbe with a fresh PhysicsCameraCollisionProbe(_physicsEngine). The per-frame Update call gains cellId: _playerController.CellId and selfEntityId: _playerController.LocalEntityId so the probe has the correct spatial context for sphere-sweep queries. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
45a4218fab
commit
e37cc150a8
1 changed files with 5 additions and 1 deletions
|
|
@ -6863,7 +6863,9 @@ public sealed class GameWindow : IDisposable
|
||||||
playerVelocity: _playerController.BodyVelocity,
|
playerVelocity: _playerController.BodyVelocity,
|
||||||
isOnGround: result.IsOnGround,
|
isOnGround: result.IsOnGround,
|
||||||
contactPlaneNormal: _playerController.ContactPlane.Normal,
|
contactPlaneNormal: _playerController.ContactPlane.Normal,
|
||||||
dt: (float)dt);
|
dt: (float)dt,
|
||||||
|
cellId: _playerController.CellId,
|
||||||
|
selfEntityId: _playerController.LocalEntityId);
|
||||||
|
|
||||||
// Send outbound movement messages to the live server.
|
// Send outbound movement messages to the live server.
|
||||||
if (_liveSession is not null)
|
if (_liveSession is not null)
|
||||||
|
|
@ -10693,6 +10695,7 @@ public sealed class GameWindow : IDisposable
|
||||||
_retailChaseCamera = new AcDream.App.Rendering.RetailChaseCamera
|
_retailChaseCamera = new AcDream.App.Rendering.RetailChaseCamera
|
||||||
{
|
{
|
||||||
Aspect = _chaseCamera.Aspect,
|
Aspect = _chaseCamera.Aspect,
|
||||||
|
CollisionProbe = new AcDream.App.Rendering.PhysicsCameraCollisionProbe(_physicsEngine),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
_cameraController.EnterChaseMode(_chaseCamera, _retailChaseCamera);
|
_cameraController.EnterChaseMode(_chaseCamera, _retailChaseCamera);
|
||||||
|
|
@ -10826,6 +10829,7 @@ public sealed class GameWindow : IDisposable
|
||||||
_retailChaseCamera = new AcDream.App.Rendering.RetailChaseCamera
|
_retailChaseCamera = new AcDream.App.Rendering.RetailChaseCamera
|
||||||
{
|
{
|
||||||
Aspect = _window!.Size.X / (float)_window.Size.Y,
|
Aspect = _window!.Size.X / (float)_window.Size.Y,
|
||||||
|
CollisionProbe = new AcDream.App.Rendering.PhysicsCameraCollisionProbe(_physicsEngine),
|
||||||
};
|
};
|
||||||
// K.1b: _playerMouseDeltaX is no longer consumed by
|
// K.1b: _playerMouseDeltaX is no longer consumed by
|
||||||
// MovementInput, but we still reset it here so any stale
|
// MovementInput, but we still reset it here so any stale
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue