hackathon/PAUSE_SIGNAL.md

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