Creating a Mixed Reality App for Meta Quest 3 Using Unity: A Step-by-Step Guide

Creating a Mixed Reality App for Meta Quest 3 Using Unity: A Step-by-Step Guide

Venturing into the realm of mixed reality (MR) development can be an exciting experience, particularly with devices like the Meta Quest 3. This detailed guide will walk you through the process of creating your first MR app using Unity, a powerful game engine widely used for VR and AR development.

Step 1: Setting Up Your Unity Project

Initiating Unity Hub: Open Unity Hub and create a new project using the latest LTS version of Unity 2022 editor.

Unity HUB - New project creation


Choosing the Template: Opt for the 3D URP template, ideal for mixed reality applications.

Choose URP (Universal Render Pipeline) 3D template


Adjusting Build Settings: Switch your project to the Android platform, ensuring texture compression is set to ASTC. Select your Quest 3 under Run Device, and switch platforms.

Switch to android platform
Texture compression ASTC


Step 2: Integrating Meta OpenXR

Meta's OpenXR package offers a framework for MR development on Quest devices.

  • Go to Window > Package Manager and add the package com.unity.xr.meta-openxr.


  • Restart Unity when prompted after enabling necessary native platform backends.

AR Foundation, OpenXR Plugin, XR Core Utilities, XR Lagacy Input Healpers, XR Plugin Management
Install XR Interaction toolkit


Step 3: Configuring XR Plugin Management

To configure XR settings:

  • In XR Plugin Management, select OpenXR and the Meta Quest feature group under the Android tab.

  • Add the Oculus Touch Controller profile in Interaction Profiles.


  • Disable HDR in URP settings for better performance on Quest.


Step 4: Creating an XR Rig

The XR Rig represents your interface in the VR world.

  • Remove the default main camera from the scene.


  • Add XR Origin (which functions as your XR Rig) from the XR menu. Set its Tracking Origin Mode to 'Floor'.


  • Add an AR Camera Manager to the Main Camera inside XR Origin for pass-through functionality.


  • Include an AR Session component for managing the AR experience.


Step 5: Optimizing and Preparing the Scene

  • Disable post-processing elements and ensure HDR is off in URP settings for Quest optimization.


  • Use Unity’s Asset Store to import a 3D model, such as a free animals.


  • Convert the model to be compatible with URP using the Render Pipeline Converter.


Step 6: Building and Deploying the App

  • Ensure your Quest 3 is set as the Run Device.
  • Click on Build and Run to deploy your app to the headset.


Step 7: Previewing in Play Mode

For quick previews:

  • Set up the Play Mode with Oculus Link.
  • Although pass-through won't work in Play Mode, it allows quick previews of other functionalities.


Additional Tips and Settings

  • When setting up your XR Rig, ensure the Main Camera’s background type is set to 'Solid Color', with the color set to black and alpha to zero.

  • In Project Settings, adjust the quality settings to suit Quest performance, disabling unnecessary features like terrain holes and additional lights.

  • Verify that the Scriptable Render Pipeline Settings in the Graphics section are correctly set to your URP asset.

Conclusion

Creating an MR app for Meta Quest 3 using Unity involves a careful setup of your project, integrating the right tools, and optimizing for the target platform.

Stay tuned for more tutorials that will delve deeper into adding advanced mixed reality features to your application.

Joyce Passananti

PhD Student in CS @ UCSB | Human-Computer Interaction, Computational Design + Fabrication, Mixed Reality

8 个月

Is there a way to simulate virtual hands in the unity editor (similar to mrtk for hololens: https://hololabinc.github.io/MixedRealityToolkit-Unity/version/releases/2.0.0/Documentation/InputSimulation/InputSimulationService.html) but for quest development? I'd like to be able to test out interactions, such as setting objects to be "grabbable" in the editor without deploying

AR/ Mixed Reality is the new frontier for design visualisation. It will reduce the barriers that have held back VR from becoming mainstream. Thanks for sharing your excellent, practical video Satya. I will be getting a Quest 3 in a few weeks and look forward to diving into Unity. Your tutorial will save me days of splashing about :-)

Faouzi Kemala ?

Computer Scientist

1 年

Thank you ?? Satya dev

David Ross Painter, PhD

Advanced Data Analytics Research & Development at davidrosspainter|dev

1 年

Awesome! Wondering a few things - which graphics APIs are compatible, whether other rendering pipelines are compatible, the best configuration for post-processing effects... Many things actually. :)

Krishna Chaitanya Gumma

Customer-Focused Support Leader | Driving Exceptional Service and Team Performance | Building Scalable Support Operations

1 年

Great

要查看或添加评论,请登录

Satya dev的更多文章

社区洞察

其他会员也浏览了