---
title: Touch Controls Thumb Zones
category: product
entity_type: skill
price: $15
canonical: https://forgehouse.ai/skills/touch-controls-thumb-zones/
lang: en
hreflang_alt: https://forgehouse.ai/tr/skiller/touch-controls-thumb-zones/
last_updated: 2026-06-20
---

# Touch Controls Thumb Zones

> Mobile touch controls design + implementation thumb-reachable zones (5.5"-6.7" screens)…

Build ergonomic, accessible touch controls for mobile games: thumb-reachable zone mapping, virtual joystick and action-button placement, tap/hold/swipe gesture disambiguation, and platform-specific haptic feedback. It grounds layout in Fitts's Law and Steven Hoober's thumb heatmap so buttons land where the thumb naturally rests, and it uses the event-driven Input System instead of per-frame polling so input stays under one frame of latency.

## Use cases
- First-time setup of a virtual joystick plus action buttons
- Fixing a 'controls feel slippery' complaint caused by wrong thumb zones
- Resolving a gesture conflict where tap and swipe fire together or vanish
- Adding one-hand vs two-hand and left-handed accessibility modes
- Adding distinct haptic patterns for hit, collect and error events
- Wiring VoiceOver/TalkBack labels onto critical UI elements

## Benefits
- Turn 'controls feel slippery' one-star reviews into ergonomic, reachable layouts
- Keep input under one frame of latency with event-driven, zero-alloc handling
- Stop tap-and-swipe conflicts with a priority-based gesture arbiter
- Pass App Store accessibility review with VoiceOver/TalkBack support

## What’s included
- A thumb-zone layout helper with right-handed and mirrored left-handed configs
- An event-driven Input System handler using EnhancedTouch with zero per-frame allocation
- A gesture recognizer with tuned tap/hold/swipe thresholds
- Platform-specific haptic feedback for iOS CoreHaptics and Android VibrationEffect
- Defensive patterns: gesture-conflict resolution, safe-area insets, hold-to-confirm, accessibility labels
- An iOS/Android platform-difference table, an anti-pattern list and a ten-point checklist

## Who it’s for
Mobile game developers building or fixing touch controls who need ergonomic thumb zones, clean gesture handling and accessibility.

## How it runs
Where does a thumb actually rest on a 6.7 inch screen? Every layout decision here starts from that heatmap and ends in measured latency, gesture thresholds and restrained haptics:
1. Lays out controls on the Hoober thumb heatmap: joystick at normalized (0.15, 0.20) bottom-left, primary action at (0.85, 0.22) where the right thumb naturally rests, pause and minimap pushed to the top where the thumb never blocks them. Every button is enforced at minimum 44pt on iOS and 48dp on Android per Fitts's Law, and a left-handed mode mirrors the whole config on the X axis.
2. Wires input through the Unity Input System with EnhancedTouch in event-driven mode: zero-allocation callbacks instead of polling Input.touches every frame, targeting under 16ms tap-to-action latency, one frame at 60fps.
3. Runs gesture disambiguation as a priority queue with hard thresholds: swipe resolves first (over 50px movement under 300ms), then hold (over 400ms with under 15px drift), then tap as the least restrictive fallback (under 150ms, under 10px). One touch sequence can never fire two gestures.
4. Adds haptics only on 3 to 4 critical events (button confirm, damage taken, item collected, error) through a platform abstraction over CoreHaptics on iOS and VibrationEffect waveforms on Android. Haptics on movement or menu navigation are banned because habituation kills the signal.
5. Hardens the edges: Screen.safeArea syncing so no button hides under a notch or Dynamic Island, a 1.5 second hold-to-confirm bar on IAP and destructive actions as gesture-injection protection, and accessibility labels on every critical element for VoiceOver and TalkBack.
6. Verifies with the checklist: button sizes measured in Inspector, gesture thresholds tested, haptics confirmed on both platforms, no legacy Input.touches left in the codebase (grep check), and input cost under 1ms in the Profiler.

## FAQ
### Is this Unity-specific, or can I use it in any mobile engine?
The implementation layer is Unity: it builds on the event-driven Input System with EnhancedTouch and ships C#-style handlers, plus iOS CoreHaptics and Android VibrationEffect integration. The ergonomic layer: Fitts's Law sizing and Steven Hoober's thumb heatmap, applies to any engine, but you would reimplement the code.

### What actually fixes a 'controls feel slippery' complaint?
Usually it is placement, not code: buttons sitting outside the natural thumb-rest zones on 5.5 to 6.7 inch screens. The layout helper repositions controls along the thumb heatmap, and the event-driven handler keeps input under one frame of latency with zero per-frame allocation, so taps register where and when the player expects.

### Does it cover gamepad, keyboard or stylus input too?
No. The scope is touch: thumb zones, virtual joysticks, tap/hold/swipe disambiguation, multi-touch, haptics and VoiceOver/TalkBack accessibility. Physical controllers and pointer hardware need a separate input setup.

## Price
$15, one-time, no subscription. VAT included.

Related guide: [A 2.5D isometric game-dev AI workflow with Unity](https://forgehouse.ai/guides/unity-isometric-ai-workflow/)
