This documentation covers the newly released Standalone XR Simulator. Older versions of the Meta Core SDK may not be fully compatible. If you encounter issues, use the toggle in Meta XR Simulator to set it as the OpenXR active runtime. For legacy usage, refer to the Archived XR Simulator documentation.
The Meta XR Simulator is an Extended Reality (XR) runtime for developing and testing XR applications on your development machine.
The simulator implements OpenXR and integrates with supported engine and graphics
API configurations. Your application must use the OpenXR features and extensions
supported by Meta XR Simulator. The simulator includes a predefined input
mapping schema and a user interface that displays information about how the
runtime composites the final view and simulates input.
Choose which device to simulate
The simulator presents one device to your application at a time. Connect an
application first: the Device control cannot list profiles until a runtime
session is active. Then select the device in the Inputs panel, under
Device info > Device. The default is Meta Quest 3. For the list of
devices you can pick, see
Meta XR Simulator.
The device you select changes what your application sees:
Field of view, recommended render resolution, and the refresh rates on offer
The supported IPD range
Which OpenXR extensions the runtime advertises, so a feature present on one
device is absent on another
Which input options appear. An input mode available on one device is absent on
another
Passthrough color mode
Test against the device you intend to ship on. A build that runs on one profile
does not prove it runs on another.
Stop and restart your application after you change Device. In an editor,
stop and re-enter Play mode. The profile is captured when your application
creates its OpenXR instance, so restarting is the reliable way to pick up the
change.
Simulate a Meta VR Glasses device
Select Meta VR Glasses in the Device control to develop against Meta VR Glasses on your
development machine.
The Meta VR Glasses profile presents these characteristics to your application:
Characteristic
Value
Field of view, per eye
37° temporal, 37° nasal, 34° up, 34° down
Refresh rates
90 Hz and 120 Hz, defaulting to 90 Hz
Recommended render resolution, per eye
1680 × 1760
Supported IPD range
0.058 m to 0.072 m
Passthrough color resolution
1024 × 1024
By default, Meta VR Glasses simulate eye gaze and hand tracking and present no
controllers. Meta Touch Plus controllers are available as an optional input.
As with any profile change, stop and restart your application after you select
Meta VR Glasses so the runtime binds the new profile.
Drive the simulator from the command line
Meta VR CLI can activate the runtime, launch and quit your application, set the
simulated device, and read the runtime logs, so you can script a simulator
session instead of clicking through the interface. The commands run on macOS and
Windows. See Meta VR CLI.
Activation
To activate, open the XR Simulator and click the slider on the top left corner.
This action will set HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenXR\1ActiveRuntime to path to meta_openxr_simulator.json on Windows, and
/usr/local/share/openxr/1/active_runtime.json on MacOS.
The Meta XR Simulator will save your current settings and restore them when it’s
deactivated. For more details, refer to the
OpenXR Loader documentation.
Note: Only one OpenXR runtime can be active at any given time. Activating
the Meta XR Simulator will automatically deactivate any other installed OpenXR
runtime, including Meta Horizon Link.
Deactivation
To deactivate, open the XR Simulator and turn off the toggle on top left corner.
The previous active runtime will be restored.
Usage
After you set the Meta XR Simulator as the active OpenXR runtime, launch your
OpenXR application. The OpenXR Loader loads Meta XR Simulator as the runtime,
and your application appears in the Meta XR Simulator window when it creates its
XrInstance:
You can run hello_xr to verify that the Meta XR Simulator is set up correctly.
The About side panel gives details on the Meta XR Simulator version, file
path, graphics API, and other useful information: