91 lines
2.8 KiB
Markdown
91 lines
2.8 KiB
Markdown
# Claude Review Request: Game Scene HUD Polish
|
|
|
|
## Goal
|
|
|
|
Match the Game scene HUD closer to the provided Beat Saber-style reference:
|
|
|
|
- Left side: combo, score, accuracy, current rank
|
|
- Right side: multiplier ring and remaining/elapsed song time
|
|
- Keep the center lane clear for notes and sabers
|
|
- Use thin, readable white/cyan text with minimal visual noise
|
|
|
|
## Current Scene Findings
|
|
|
|
Unity bridge reports active scene:
|
|
|
|
- Scene: `Game`
|
|
- Playing: `true`
|
|
- Main HUD root: `_UI/ScoreCanvas`
|
|
- Existing HUD items:
|
|
- `_UI/ScoreCanvas/Combo`
|
|
- `_UI/ScoreCanvas/Score`
|
|
- `_UI/ScoreCanvas/Accuracy`
|
|
- `_UI/ScoreCanvas/Rank`
|
|
- `_UI/ScoreCanvas/Multiplier`
|
|
- `_UI/ScoreCanvas/Image`
|
|
- `_UI/ScoreCanvas/SongProgress`
|
|
- `_UI/ScoreCanvas/Judgement`
|
|
|
|
Current `ScoreCanvas` world placement:
|
|
|
|
- Position: approximately `(5.8, 2.4, 17.8)`
|
|
- Rotation: approximately `(354.8, 18.7, 0)`
|
|
- Scale: `(0.005, 0.005, 0.005)`
|
|
|
|
## Proposed Direction
|
|
|
|
Prefer scene/UI layout polish first. Avoid gameplay logic changes.
|
|
|
|
1. Split HUD into stable left and right visual groups under `_UI/ScoreCanvas`.
|
|
2. Left group layout:
|
|
- `COMBO`
|
|
- combo number, larger
|
|
- score
|
|
- accuracy percent
|
|
- rank, larger
|
|
3. Right group layout:
|
|
- circular multiplier ring
|
|
- multiplier value centered, e.g. `x4`
|
|
- small time bar below
|
|
- elapsed / total or remaining time text
|
|
4. Move `Judgement` away from persistent HUD, likely near center-top or temporarily shown and faded.
|
|
5. Keep HUD outside the note highway and saber swing area.
|
|
|
|
## Suggested Implementation Options
|
|
|
|
### Option A: Scene-only first
|
|
|
|
Adjust Game scene RectTransforms / world canvas placement and existing child positions without changing code.
|
|
|
|
Pros:
|
|
- Lowest risk
|
|
- Fast to evaluate visually in Unity
|
|
- Matches user request to polish Game scene first
|
|
|
|
Cons:
|
|
- Existing `ScoreManager.PrepareHud()` may overwrite some RectTransform values at runtime if `applyHudPlacement` or label setup runs.
|
|
|
|
Estimated score: 78/100 unless we confirm code does not overwrite the scene layout.
|
|
|
|
### Option B: Minimal code-supported layout
|
|
|
|
Make `ScoreManager` expose a stable Beat Saber HUD layout preset and only adjust positions/sizes of existing labels.
|
|
|
|
Pros:
|
|
- Runtime layout stays consistent
|
|
- Existing labels and score data remain unchanged
|
|
- Low gameplay risk
|
|
|
|
Cons:
|
|
- Requires code edit, so must pass the 80+ review gate.
|
|
|
|
Estimated score: 86/100 if scoped only to HUD placement/style and verified in Play mode.
|
|
|
|
## Codex Recommendation
|
|
|
|
Start with Option A in Unity scene if possible. If `ScoreManager.PrepareHud()` overwrites the layout during play, move to Option B with a narrow code change.
|
|
|
|
Codex preliminary score for Option B: 86/100.
|
|
|
|
Claude Code: please review this proposal and either approve with score >= 80 or suggest revisions before code changes proceed.
|