33 lines
1.6 KiB
Markdown
33 lines
1.6 KiB
Markdown
# Pause Signal Rework
|
|
|
|
## Problem
|
|
|
|
The current pause gesture is **arms-out (T-pose)**: both wrists at shoulder height.
|
|
|
|
Issues:
|
|
- **Accidental triggers** — players raise arms during gameplay and inadvertently pause
|
|
- **Unintuitive** — new players don't know or remember to hold a T-pose to pause
|
|
|
|
## Current Implementation
|
|
|
|
- `armsOutDetector.ts` — checks both wrists within `ARMS_Y_TOLERANCE` (0.15) of shoulder Y
|
|
- 2-second cooldown after arms drop before it can re-trigger
|
|
- Arms-out is dual-purpose: it both **pauses gameplay** and is the **calibration-ready signal**
|
|
|
|
## Alternative Signals
|
|
|
|
| Gesture | Pros | Cons |
|
|
|---|---|---|
|
|
| **Hands on head** (both wrists above head) | Very intentional, hard to do by accident | Might be tiring if held |
|
|
| **Crossed arms** (wrists near opposite shoulders) | Familiar "stop" posture, unlikely during dance | Harder to detect reliably with occlusion |
|
|
| **Hand over face** (one wrist covering nose) | Simple, quick | Could conflict with wiping sweat |
|
|
| **Both hands raised high** (surrender pose) | Easy to detect, distinct from dance moves | Could overlap with jump celebrations |
|
|
| **Timeout / stillness** (no movement for N seconds) | No specific pose needed | Slow, frustrating to wait |
|
|
| **Palm facing camera** (open hand toward webcam) | Intuitive "stop" signal | Requires hand landmark model, more compute |
|
|
|
|
## Considerations
|
|
|
|
- Whatever replaces T-pose for pause must not conflict with the calibration flow (which also uses arms-out to signal "ready")
|
|
- Should be easy to explain in the tutorial overlay
|
|
- Must be distinct from stepping, jumping, and natural dance movement
|