Files
Space-Game/apps
francy51 b8e8f934d3 feat(physics): collision resolution + proximity queries (P2)
Implement the kinematic physics & collision layer per ARCH-7 (no physics
engine; distance-based collision + spatial queries).

physics/
- components.rs (new): BodyMass, ProximitySensor, CollisionEvent, ProximityEvent
- geometry.rs: add sphere_overlap() + split_by_inverse_mass() with unit tests
- systems.rs: collision pipeline (detect_collisions -> resolve_collisions)
  with mass-weighted separation and inbound-velocity cancel, plus
  update_proximity_sensors spatial query and a log_physics_events observer.
  Core math factored into pure plan_collisions() with unit tests.
- mod.rs: PhysicsPlugin registers events, FrameCollisions resource, and the
  InGame systems ordered after kinematic integration.

in_system/scene.rs: give the player ship a BoundingVolume collider, BodyMass,
and a ProximitySensor so it participates in collision and spatial queries.

Bodies with a Velocity are movable; scenery is immovable. 19 unit tests pass;
no new compiler/clippy warnings introduced.
2026-06-16 21:30:27 -04:00
..