VR guide
What to know before you hire a VR app development company
The questions enterprise buyers ask before a VR project: how one app reaches several headsets, what standalone hardware can render, how a fleet is deployed, what shared sessions need, and what it costs.
How does OpenXR let one VR app run on several headsets?
OpenXR is the Khronos Group standard that most VR runtimes implement, including Meta Quest and SteamVR. Unity's OpenXR plugin and Unreal's OpenXR support talk to that standard instead of one vendor's SDK, so the same interaction code, locomotion and controller bindings work across headsets. Headset-specific features - hand tracking, passthrough, eye tracking - arrive as OpenXR extensions, which we enable per target with a fallback where a headset lacks them.
Apple Vision Pro is the exception: visionOS does not use OpenXR. We keep it as a separate build target in the same Unity project, with its own input model of eyes and hands instead of controllers. In practice a multi-headset release is an Android build for Quest, a Windows build for SteamVR and an Xcode project for visionOS, each profiled on its own hardware.
Standalone or PC-tethered headset - what can each one render?
A standalone headset such as Meta Quest 3 or 3S renders everything on a mobile-class chip inside the headset, running on a battery. That means Unity's URP with forward rendering, baked lighting, compressed textures, a tight draw-call budget and few real-time shadows. PC-only features - Unity's HDRP, Unreal's Lumen global illumination and Nanite geometry - are not used on standalone headsets at all.
A PC-tethered setup (a SteamVR headset, or a Quest connected to a PC) renders on a desktop graphics card, so photoreal materials, dynamic lighting and dense CAD models become possible. The trade-off is a gaming PC per station. Most training fleets choose standalone for easy rollout; design reviews and high-fidelity simulators choose PC VR. Vision Pro is standalone too, with its own performance profile.
How is enterprise VR deployed to a fleet of headsets?
Consumer VR ships through public stores; enterprise VR usually does not. Headsets are enrolled in a device management system - the headset maker's business service or a third-party MDM that supports the headset - which installs the app privately, pushes updates and can lock each device to the training app. A deployment pipeline we set up typically covers:
- Private distribution of each release to managed headsets, with a staged rollout
- Kiosk or single-app mode for shared training rooms
- Shared-device sign-in, so one headset serves many trainees
- Offline mode that syncs scores when the headset is back on Wi-Fi
- Results sent to your LMS through xAPI, or a SCORM package where the LMS requires it
- Automated builds that sign each platform's package for release
What do avatars and networking add to multi-user VR?
Shared sessions - an instructor with trainees, or a sales rep with a remote buyer - need three layers. Avatars show where each person is and what they point at; on current headsets they are driven by head and hand tracking, with inverse kinematics estimating arms and body. Networking keeps grabbed objects, training steps and scores in sync, and decides who owns an object when two people reach for it. Voice needs spatial audio, so people sound like they stand where their avatar stands.
We build networking on Photon, with Photon Voice, or on Unity Netcode, and size rooms to the use case: a handful of trainees per instructor is a different design from a 50-person event. Enterprise clients often need sign-in through their identity provider and servers in a chosen region; both are scoped up front.
Which training and simulation use cases suit VR?
VR earns its cost where practice in the real world is dangerous, expensive, rare or hard to schedule: machine operation and lockout procedures, emergency response, clinical procedures, equipment that cannot be taken offline, and difficult conversations rehearsed as branching scenarios. Because every grab, step and mistake is logged, trainee performance is scored objectively rather than by observation alone.
It fits less well when the content is mostly reading, when sessions would run longer than people comfortably wear a headset, or when trainees only need to look at a product - AR app development or a browser 3D viewer is cheaper there. For a persistent shared world rather than a training module, see metaverse app development.
What are the comfort and performance budgets in VR?
A headset must draw a new frame for each eye at its refresh rate: 11.1 ms per frame at 90 Hz, 13.9 ms at 72 Hz and 8.3 ms at 120 Hz. When a frame is late, the runtime reprojects the previous one, which shows as judder and, over a session, as discomfort. So the budget is set per headset before art production starts - triangle counts, texture sizes, draw calls, lights and physics objects per scene - and checked on the headset every sprint.
Comfort is designed in the same way: teleport and snap turn as defaults, an optional vignette for smooth movement, no camera motion the user did not cause, a seated mode, height calibration, and text sized for the headset's resolution rather than a monitor's.
What does VR app development cost, and how do you choose a VR developer?
At Miracuves a VR starter experience - one environment on one headset platform, with an analytics dashboard - starts from $3,699 and takes 4-6 weeks. Enterprise training builds typically run $14,999-$45,000 over 2-8 weeks; larger scopes are quoted in writing. The biggest cost drivers are 3D content, the number of headset targets, multiplayer and LMS integration.
When you compare VR developers, ask to see:
- Footage recorded inside a headset, not the editor
- A frame-timing capture from a standalone build
- Which comfort options ship by default
- How they handle Vision Pro next to OpenXR headsets
- Whether the Unity or Unreal project, 3D source files and store listings end up in your accounts