Rebuild the camera around a single persistent MainCamera and the
Camera System design-doc model: two framing modes (Orbit = inspection/
docked tactical, Follow = track the ship) plus Cinematic as a boolean
overlay (free rotation + HUD hide + live gameplay), not a third mode.
Critical fixes (gap analysis A1-A3):
- A1: scenes now *reconfigure* the one startup camera instead of spawning
a second one; despawn_in_system_scene no longer destroys MainCamera, so
the session never loses its camera. .single_mut() on MainCamera now
succeeds during flight.
- A2: Cinematic is a real overlay — toggle (KeyC), free-look rotation in
any framing, HUD hidden while active, gameplay keeps running.
- A3: removed dead FollowCamera component + setup_follow_camera; tracking
is unified in track_camera_target.
Gaps B1-B6:
- B1: adopted doc model (Cinematic overlay, not exclusive mode).
- B2: canonical isometric tactical_rotation() baseline.
- B3: smooth reframing via OrbitFocusGoal exponential-damp tween.
- B4: non-zero CameraState defaults.
- B5: consolidated the three orbit-control impls into one (dropped the
starting_base local control + its Euler variant).
- B6: track_camera_target keeps OrbitCamera.target synced to the focus
entity every frame.
Docked view now frames the actual station at a tactical iso distance.
cargo check + clippy clean for all newly-authored code; net -10 lines
(more dead code removed than added). 42 tests pass.
Add comprehensive in-system gameplay features including:
Camera System:
- Orbit mode for galaxy/inspection views
- Follow mode for tracking player ship during flight
- Cinematic mode for docked/cutscene views
- Smooth interpolation and orbit controls
In-System Gameplay:
- Docked state at stations with undock functionality
- Flight mode with velocity and target-based navigation
- Point-and-click movement via ground plane projection
- Target selection system for POIs
Flight Controls:
- Flight state tracking with speed monitoring
- Automatic camera transitions between modes
- Flight HUD with speed indicator and status panel
- Contextual action system for approach/dock/mining
UI Updates:
- Docked station panel with system information
- Flight mode controls and hints
- Dynamic population display
This implementation provides the foundation for tactical
space gameplay with smooth camera transitions and
intuitive point-and-click navigation.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>