Since I have just spent three hours researching this, I am sharing my extensive notes about the list of steps required for deploying to a Meta Quest 3 from within UE5.2. Now if you read this a year from now, chances are good that the list of steps required may have changed. Always refer to the the official Unreal and Meta guides in case of need.
Also, as of today, 11 November 2023, this guide WILL not work in UE5.3. simply because the MetaXR plugin has not yet been updated to UE5.3.
Deploying to Quest - Workflow UE5.2 to Quest 3
- Have the headset connected to the PC via USB-C cable.
- Enable developer mode on the Headset (can be done from the headset or the mobile app, and from Meta Quest Dev Hub*), this should enable USB debug mode. Make sure you have “allowed connection” from inside the headset. If this step does not appear, then something is not correct.
-Download Oculus PC desktop app (if not already installed)
- Follow the Unreal documentation to install the proper Version of the Android SDK and NDK (in 2023 for UE5.2, this Android Studio 4.0 as of May 28,2020), How to Set Up Android SDK and NDK For Your Unreal Engine Development Environment | Unreal Engine 5.2 Documentation
a. Particluarly, SDK, NDK, JDK. Make sure to use the SDK version that UE supports (it may not be the latest version!)
b. After having installed and configured, Android studio, run SetupAndroid from Engine/Extras as Administrator.
c. The install directory for NDK should be C:/Users/[Username]/AppData/Local/Android/SDK/ndk/, where “username” is your login name for your computer.
- Verify if the Quest headset can be reached via ADB:
a. Open up windows command propt (Windows+R), CMD, type “adb devices”. Your headset’s ID should appear if connected. - Allow USB Debugging from inside the headset (a window will pop up).
- Not techincally required but could be beneficial:
a. Having a Meta dev organisation https://developer.oculus.com/manage/organizations/1415855195443090/
b. Download & install the Meta Quest Dev Hub (earlier, ODH) and configure it. This is quite a useful app to have but be cautious!
a. You may have to set ADB and NDK paths manually as they may interfere with what you set up under Pt2.
b. You may need the Oculus ADB drivers (not sure)
c. You may need to set up the device with MQDH, which may require a WiFi
In my main dev workstation I ended up not installing MQDH and could still compile for and deploy to the Quest 3
Unreal
- Device should be visible from Platforms/Devices in Unreal
- Under Platforms, Android should not have any exclamation marks
- Enable MetaXR Plugin under Plugins
- Make Project settings following the Meta guide Not Found | Oculus
- Most importantly: Configure under Platforms/Android, hit “configure for project”
- Set the following settings depending on your target device, Minimum SDK Version: 32. . Target SDK Version: 32. Enable FullScreen Immersive on KitKat and above devices and check for True. Disable Support OpenGL ES3.2 in Build.
- Add support to the headsets used under “Advanced APKPackaging” and Plugins/MetaXR
- Rendering configurations
Should now be ready to deploy to Quest 3 from inside UE5.2