neon-sprawl/docs/decomposition/modules/E1_M2_IsometricCameraContro...

2.0 KiB

E1.M2 — IsometricCameraController

Summary

Field Value
Module ID E1.M2
Epic Epic 1 — Core Player Runtime
Stage target Prototype
Status Planned (see dependency register)

Purpose

Delivers a locked isometric camera that keeps the player readable during motion: follow behavior, discrete zoom bands, occlusion handling, and explicit no rotation so combat telegraphs and UI remain consistent with the vision for fixed isometric presentation.

Responsibilities

  • Locked isometric follow (camera does not freely orbit).
  • Zoom bands and configuration-driven limits.
  • Occlusion policy so critical gameplay elements remain visible where possible.
  • Enforcement of no-rotation rules for the prototype camera model.

Key contracts

Contract Role
CameraState Current follow target, zoom level, and policy flags for consumers (e.g. risk UX).
ZoomBandConfig Data-driven min/max or discrete zoom steps.
OcclusionPolicy Rules for fading, dithering, or offset when geometry blocks the view.

Module dependencies

  • E1.M1 — InputAndMovementRuntime: camera follows the player anchor derived from movement/position.

Dependents (by design)

  • E6.M2 — Consent and risk UX may use camera-adjacent presentation; epic lists E1.M2 as a dependency for in-zone risk signaling and readability.

See Epic 1 Slice 2 — Locked isometric camera: follow-center, zoom bands, occlusion policy, no rotation; optional telemetry such as throttled camera_zoom_changed and perf stress markers for occluders.

Risks and telemetry

  • Occlusion hiding telegraphs: tune policy early and include readability checklist in prototype gates.

Source anchors