# ADR-0008: Cone focus and head ring - **Status:** Accepted - **Date:** TBD ## Context The prototype picks a person with an 8 m physics ray from the camera. The collider is a capsule. A few pixels off the body, or a bob during a walk, clears the target. The HUD then prints a name and hint, but nothing in the world shows who is selected. `Tab` already cycles people within 12 m as an aim-free path. The next pass needs the player to look at a person, know they have them, and only then open an action menu. A hairline ray is too brittle for that, and a HUD line is easy to miss in a crowd. ## Decision Focus is a **cone**, not a ray. - People within about 10 m whose **head** projects inside a screen-space circle around the crosshair (about 90 px / 10 degrees) are candidates. - If several heads sit in the circle, pick the one closest to the center; if tied, the nearer one. - The person must be in front of the camera. A short ray to the head skips people fully hidden by the building. - A few frames of grace keep walk-bob from dropping focus. - `Tab` still cycles people inside 12 m and sets the same focused person. When someone is in focus, draw a **thin ring** around their head, attached to the avatar `Head` node, billboarded so it stays a circle on screen. Pale gold while idle; brighter and slightly larger while the action menu is open on that person. Optional `display_name` under the ring. One ring at a time. The world must not show the internal type name (`Trespasser`, `Violent Threat`). The debug overlay (`F`) can still print it. ## Consequences ### Positive - Looking near a person is enough; the player does not have to pin a capsule. - The ring is visible in the scene, so the HUD is not the only focus cue. - `Tab` remains the accessibility path and shares the same focused person. - The action menu (ADR-0009) has a clear subject. ### Negative - Two heads in the same circle can steal focus; center-distance is a heuristic, not a lock-on. - Hats and protester signs can z-fight a 3D torus. A screen-space circle unprojected from the head is an allowed fallback. - Occlusion rays can fail on unusual geometry; grace frames hide some of that. ## Alternatives considered - **Keep the hairline ray:** Rejected because it drops people too easily and has no world mark. - **Sticky lock-on until cancelled:** Rejected because the job is to watch a crowd, not duel one person. - **Screen reticle only, no world ring:** Rejected; in a crowd the player needs a mark on the head, not only a HUD line. - **Click a person to select, then act:** Rejected for default play. The mouse is captured for look (ADR-0007). Click opens the action menu on whoever is already in the cone.