Getting Started with Virtual Keyboard
Updated: Dec 19, 2024
To work with Virtual Keyboard, you need the following:
- A Meta Quest headset with the v54 or a later version of the Quest operating system.
- The recommended or later version of Unity.
- V54 or a later version of the Meta XR Core SDK, which is available individually or as part of the Meta XR All-in-One SDK. These are the packages
com.meta.xr.sdk.core
and optionally com.meta.xr.sdk.core.all
.
- Virtual Keyboard has files in:
- Oculus\VR\Prefabs*
- Oculus\VR\Scripts*
- Oculus\VR\Scenes*
- And requires OVRPlugin
Check your Meta Horizon OS and Meta XR SDK versions:
- Using the headset, go to Settings > System > Software Update.
- Check the version.
- If the version is not v54 or higher, update the software to the latest available version.
Virtual Keyboard supports Unity editor on Windows when using Meta Quest headset and Link. This functionality is supported only in the Unity editor to help improve iteration time for Meta Quest developers.
Enable OpenXR for the project
To set up a new project, follow these required settings to ensure the app builds correctly:
Note
Skip these steps if you’re working on an existing project that was once built using the Meta XR Core SDK or has been already submitted to the Meta Horizon Store.
- Ensure that the OVR Plugin is up-to-date by navigating to Meta > Tools > OVR Utilities Plugin and selecting Manual Update OVR Plugin.
- Go to Meta > Tools > OVR Utilities Plugin > Set OVRPlugin to OpenXR, and set the project to use the OpenXR backend.
- Set the target platform to Android
- Set the Android minimum API and target API levels
- Enable virtual reality support
- Apply the configuration settings
- Apply the rendering settings
Setup for using Virtual Keyboard
- Create a new scene with an OVRCameraRig prefab, open an existing scene that already has one, or open the VirtualKeyboard.unity sample scene.
- In the Hierarchy, select OVRCameraRig.
- In the Inspector, go to OVR Manager > Quest Features > General and from the Hand Tracking Support list, select Controllers and Hands.
- Set Render Model Support to Enabled.
Uncheck
Requires System Keyboard. If you still want to use it with Virtual Keyboard, see the
FAQ.
Note
If enabled, the System Keyboard (Keyboard Overlay) requires a focus switch from your application to the System Keyboard's overlay when in use. If System Keyboard is enabled, the application must also enable focus awareness. The Virtual Keyboard, what you're setting up in this document, avoids that focus change requirement by rendering the keyboard directly in your application.Set Virtual Keyboard Support to either Required or Supported.

- On the Meta menu, go to Tools > Update AndroidManifest.xml.
You have now set up your project to use Virtual Keyboard.