Imported from sickn33/agentic-awesome-skills (
skills/game-development/vr-ar/SKILL.md). Install upstream withnpx skills add sickn33/agentic-awesome-skills --skill vr-ar. Copyright stays with the author.
VR/AR Development
Immersive experience principles.
1. Platform Selection
VR Platforms
| Platform | Use Case |
|---|---|
| Quest | Standalone, wireless |
| PCVR | High fidelity |
| PSVR | Console market |
| WebXR | Browser-based |
AR Platforms
| Platform | Use Case |
|---|---|
| ARKit | iOS devices |
| ARCore | Android devices |
| WebXR | Browser AR |
| HoloLens | Enterprise |
2. Comfort Principles
Motion Sickness Prevention
| Cause | Solution |
|---|---|
| Locomotion | Teleport, snap turn |
| Low FPS | Meet the selected headset refresh rate consistently |
| Camera shake | Avoid or minimize |
| Rapid acceleration | Gradual movement |
Comfort Settings
- Vignette during movement
- Snap vs smooth turning
- Seated vs standing modes
- Height calibration
3. Performance Requirements
Historical hardware examples
Panel resolution is not the recommended render-target resolution. Verify supported refresh modes, runtime scaling and device support before setting a budget.
| Platform | FPS | Resolution |
|---|---|---|
| Quest 2 | 72-90 | 1832x1920 |
| Quest 3 | 90-120 | 2064x2208 |
| PCVR | 90 | 2160x2160+ |
| PSVR2 | 90-120 | 2000x2040 |
Frame Budget
- VR requires consistent frame times
- Dropped frames can produce judder; reprojection does not remove the need for stable timing
- 90 FPS = 11.11ms budget
4. Interaction Principles
Controller Interaction
| Type | Use |
|---|---|
| Point + click | UI, distant objects |
| Grab | Manipulation |
| Gesture | Magic, special actions |
| Physical | Throwing, swinging |
Hand Tracking
- More immersive but less precise
- Good for: social, casual
- Challenging for: action, precision
5. Spatial Design
World Scale
- Calibrate engine world scale against real meters; engine unit conventions differ
- Objects must feel right size
- Test with real measurements
Depth Cues
| Cue | Importance |
|---|---|
| Stereo | Primary depth |
| Motion parallax | Secondary |
| Shadows | Grounding |
| Occlusion | Layering |
6. Anti-Patterns
| ❌ Don't | ✅ Do |
|---|---|
| Move camera without player | Player controls camera |
| Miss the selected refresh budget | Profile frame timing on the target headset |
| Use tiny UI text | Large, readable text |
| Ignore arm length | Scale to player reach |
Remember: Comfort is not optional. Sick players don't play.
When to Use
Use when designing immersive locomotion, spatial interaction and comfort settings, or measuring frame times on a target headset.
Example
User request:
Use @vr-ar for this task: VR/AR development principles.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Verification
Treat tables as design starting points, not guarantees. Prototype the selected mechanic, test accessibility and recovery paths, and measure frame timing, memory and behavior on target hardware before claiming completion. Store submission and licensing requirements must be checked against current official platform documentation.
