Develop Immersive VR/AR Experiences
Immersive VR/AR development reference: platform selection, comfort/motion sickness prevention, performance targets, and interaction design.
Why it matters
Create engaging and comfortable virtual and augmented reality experiences by applying principles of platform selection, motion sickness prevention, and performance optimization.
Outcomes
What it gets done
Select appropriate VR/AR platforms (Quest, PCVR, ARKit, ARCore, WebXR, HoloLens).
Implement comfort principles to prevent motion sickness (teleportation, snap turning, vignettes).
Optimize performance to meet target FPS and resolution metrics for various devices.
Design intuitive controller and hand-tracking interactions.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/ag-vr-ar | bash Overview
VR/AR Development
An immersive-experience reference for VR/AR development covering platform selection, motion-sickness-driven comfort settings, per-headset performance targets, controller/hand-tracking interaction design, and world-scale spatial design. Use when making VR/AR-specific design or technical decisions around comfort, performance targets, or interaction; skip it for flat-screen game work.
What it does
Provides immersive experience principles for VR and AR development, organized as reference tables covering platform selection, comfort and motion sickness prevention, performance targets, controller and hand-tracking interaction, and spatial design.
When to use - and when NOT to
Use this skill when working on VR/AR development tasks or workflows that need guidance, best practices, or checklists specific to immersive platforms. Do not use it for tasks unrelated to VR/AR, or when a different domain or tool is actually needed.
Inputs and outputs
Platform selection covers VR options (Quest for standalone/wireless, PCVR for high fidelity, PSVR for the console market, WebXR for browser-based) and AR options (ARKit for iOS, ARCore for Android, WebXR for browser AR, HoloLens for enterprise).
Comfort principles address motion sickness by cause and solution: locomotion sickness is solved with teleport or snap-turn movement, low FPS is solved by maintaining 90 FPS, camera shake should be avoided or minimized, and rapid acceleration should be replaced with gradual movement. Comfort settings include a vignette during movement, snap vs. smooth turning options, seated vs. standing modes, and height calibration.
Performance requirements set concrete per-platform targets: Quest 2 at 72-90 FPS / 1832x1920, Quest 3 at 90-120 FPS / 2064x2208, PCVR at 90 FPS / 2160x2160+, and PSVR2 at 90-120 FPS / 2000x2040. VR demands consistent frame times - a single dropped frame produces visible judder, and 90 FPS gives an 11.11ms frame budget.
Interaction principles cover controller interaction types (point-and-click for UI and distant objects, grab for manipulation, gesture for magic/special actions, physical throwing/swinging) and hand tracking, which trades precision for immersion - good for social or casual experiences, challenging for action or precision-demanding ones.
Spatial design requires world scale set to 1 unit = 1 meter as a critical, non-negotiable baseline, with objects tested against real measurements to feel the right size. Depth cues are ranked by importance: stereo as the primary cue, motion parallax as secondary, shadows for grounding, and occlusion for layering.
Anti-patterns flagged: moving the camera without player input instead of letting the player control the camera, dropping below 90 FPS instead of maintaining frame rate, using tiny UI text instead of large readable text, and ignoring arm length instead of scaling interactions to player reach.
Who it's for
VR/AR developers and designers who need a fast reference for platform selection, comfort-driven design decisions, per-headset performance targets, and interaction/spatial design - the constraints specific to immersive hardware that don't apply to flat-screen games.
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.