At
Meta Connect, we shared new hardware, development paths, tools, and mixed reality technologies paving the way for greater developer success on Meta Horizon OS. We’re evolving our platform to make it easier for more developers to leverage the magic of mixed reality and
opening the Meta Horizon Store to provide flexible opportunities to distribute new kinds of experiences using the latest capabilities—from fully immersive worlds to 2D panel apps, mixed reality games, web-based experiences, and everything in between.
Meta Horizon OS marks a new era across our platform. It’s designed for spatial computing, enabling us to tighten our tools and provide a consistent foundation for you to focus on what’s important: developing incredible apps and growing your business.
The launch of
Meta Quest 3S is expanding the mixed reality market, delivering affordable, high-quality experiences to immersive newcomers and those looking for an upgrade alike. Below, we share available development paths, supported experiences for
Meta Quest 3 and Quest 3S, and how to start building rich apps for a larger audience across gaming, fitness, entertainment, and more.
Explore Supported Experiences to Define Your Vision
When Meta Quest 2 launched in 2020, millions of people were introduced to the immersive power of Virtual Reality, or VR. Since then, advances in spatial computing and investments in our hardware and software ecosystems have enabled mixed reality to enter the mainstream, opening doors for developers to innovate by blending the physical and virtual worlds and optimizing familiar experiences with unique spatial features. Depending on your development goals, here’s what you can build on Meta Horizon OS.
- Fully Immersive Experiences: Dial up the immersion to transport people into all-encompassing virtual environments. Using our suite of proven VR capabilities, you can craft nearly endless varieties of immersive worlds where users can interact, explore, and join up with others. VR experiences can be built using Unity, Unreal Engine, WebXR, Meta Spatial SDK, or your native engine.
- Blended Experiences: Mixed reality lets you blend the physical and virtual worlds in surprising and delightful ways. Our groundbreaking and expanding suite of mixed reality capabilities enables your apps to dynamically understand physical spaces and adapt to objects, people, and even pets. To learn more about mixed reality, visit our new page in the Developer Center.
- 2D Panel and Extended Apps: Meta Horizon OS supports 2D apps that let people stay connected with their favorite experiences on a new spatial platform. You can optimize and launch native Android apps as 2D panels that can be experienced in immersive or blended environments. Using known workflows and frameworks like Android Studio, Java, Kotlin, and Jetpack, you can also build entirely new 2D apps that engage users as they multitask, work, play, browse, and watch in mixed reality. To add additional spatial capabilities to your 2D apps, you can leverage Meta Spatial SDK.
Choose Your Development Path
Once you’ve determined the type of experience you want to build, it’s time to choose a development path. Whether you want to build social apps, high-fidelity VR games, mixed reality experiences, or other kinds of immersive apps, following a defined path can help you understand what tools and resources are available to help you achieve your goals.
Meta Horizon OS offers support for several engines that you can choose from to bring your ideas to life like never before on Quest 3 and Quest 3S as you reap the benefits of distributing to a growing audience through the Meta Horizon Store.
- Unity, Unreal Engine, and Native: To follow the most well-defined and popular path toward distribution, you’ll want to consider using a powerful 3D engine—or build your own. Unity and Unreal Engine give both new and seasoned developers powerful, established tooling to develop immersive 3D VR and mixed reality experiences. Unity features intuitive tools and versatile options to achieve your vision. Unreal offers cutting-edge tools and collaboration features to build out high-fidelity experiences that push the limits of performance. If you’re looking to build out a custom engine, the Meta Horizon Developer Center offers extensive native documentation that can help you leverage OpenXR and integrate the latest mixed reality capabilities into your app. Once you’ve built your vision out on Unity or Unreal, you can distribute it across multiple platforms to widen your audience and achieve greater success. To learn more about building with Unity, Unreal, and Native, visit the documentation.
- Meta Spatial SDK: If you’re looking for an easier, faster, and mobile-friendly way to develop immersive apps for Meta Horizon OS, Meta Spatial SDK is your go-to development path. Meta Spatial SDK is a Kotlin-based set of accessible APIs that lets you use the Android development languages, tools, and libraries you’re familiar with to build completely new immersive apps or take existing mobile apps and enhance them by adding spatial features. We’ve designed Meta Spatial SDK to streamline the process of adding complexity and depth to your existing mobile experiences without the need for a game engine. To accelerate the process further, Meta Spatial SDK also offers Meta Spatial Editor, a spatial composition tool that allows you to import, organize, and transform your assets into visual compositions. To learn more about Meta Spatial SDK and find examples of what you can build with it, visit the documentation, dive into our open source samples, and watch the Connect session “Introducing Meta Spatial SDK.”
- 2D and Web: Meta Horizon OS supports rich 2D experiences that enable you to take advantage of Quest’s advanced multitasking capabilities and distribute your experiences on the Meta Horizon Store just like any other immersive app. Web-based experiences can also be viewed on any modern browser, giving people more ways to experience your app. To build out 2D experiences, you can leverage either WebXR or Progressive Web Apps (PWAs). PWAs are built using Bubblewrap, a tool to package your PWA into an Android App Bundle. With it, you can create an Android app that launches PWAs using “Trusted Web Activity,” a mechanism to access web content from an Android app. You can also immediately port existing 2D apps to the Meta Horizon Store. To learn more about designing 2D and web-based experiences, check out our documentation.
No matter which path you choose, you can visit our recently revamped
Meta Horizon Developer Center to help you find the guidance you’re looking for.
Getting Started: The Basics
Once you’ve determined what type of experience you want to build and how you’ll build it, you can follow these essential steps to kickstart your development process and solidify your foundation.
Step 1: Purchase a Device
Before you distribute your app, you’ll want to ensure your experience runs smoothly in-headset. We’ve bolstered tools like Meta XR Simulator that enable you to iterate and test your experience without a physical device, but final testing in an actual user environment will ensure quality control before you ship your app to Meta Quest users.
Meta Quest 3S is now available for
purchase, giving you a more affordable hardware option at $299.99 USD for 128GB of memory, or $399.99 USD for 256GB of memory. Quest 3S is built to support all of the incredible experiences currently available for Quest 3. And to ensure compatibility between devices, Quest 3S features the same power and performance as Quest 3 with a Qualcomm Snapdragon XR2 Gen 2 processor and 8GB of RAM. To purchase a Quest 3S or to compare specs between Quest 3S and Quest 3, visit the
product page.
Step 2: Create a Developer Account and Developer Organization
All developers distributing apps on the Meta Horizon Store will need to create a developer account and organization through the Developer Center. Creating a developer account provides you with access to the Developer Dashboard, which contains a host of monetization tools, analytics insights, and platform services that can enhance your development journey and help you grow your business. From the Developer Dashboard, you can also enter your financial information to receive payouts, create test user accounts, and manage members of your organization. To create a developer account, click the “Login” button in the upper right corner of the Developer Center. For more information on creating a developer organization, visit the
documentation.
Step 3: Download MQDH
Meta Quest Developer Hub (MQDH) is an essential desktop companion app that is designed to accelerate your development process by streamlining iteration, testing, debugging, device management, and aspects of development like downloading packages and accessing code samples. MQDH is available for both Windows and Mac, and it offers the ability to submit your app directly to the Developer Dashboard for distribution. To view instructions on getting started with MQDH, visit the
documentation.
Step 4: Get Familiar with Meta Quest Link
Meta Quest Link is a core development feature and desktop app that lets you connect your headset to a Windows computer via USB-C or WiFi to accelerate development and iteration. Using Link, you can immediately view changes made in development environments such as Unity and Unreal directly in Quest without compiling. Link enables a realistic user environment by supporting stunning visual quality via a 120Hz refresh rate for PC VR titles with Quest 3 and provides granular developer settings like the ability to remove the boundary. To get started with Link, visit the
documentation.
Now that you have a foundational understanding of how to get started developing for Meta Quest devices on Meta Horizon OS, let’s take a look at steps to start building on your preferred development path.
Getting Started with Unity
Unity provides a robust, versatile, and intuitive engine for developers looking to build complex and dynamic 3D apps for mixed reality. We’ve worked on providing Meta Horizon-specific features that can help get you set up faster, quickly implement a variety of capabilities, and iterate more efficiently. Before getting started, all developers building for Meta Horizon OS in Unity should run through the following checklist:
- Download the All-in-One SDK Via the Unity Package Manager. The All-in-One package bundles several Meta SDKs together, which includes many features that offer advanced rendering, social and community building, and capabilities to build immersive experiences. To download the All-in-One SDK, visit the Unity Asset Store.
- Use the Meta Build Target in Unity. The target platform for Meta Quest devices is Android, and the final build output is an .apk file (Android executable). Before starting development, you’ll need to set the Unity build target to your headset, which you can find instructions for in the documentation.
- Enable the Project Setup Tool in Unity. The Project Setup Tool can help you quickly configure projects for Meta Quest devices by testing a registry of rules called Configuration Tasks and can be enabled directly within the Unity Editor. While the Project Setup Tool provides a default set of rules to make your apps Meta Quest-ready, you can also add custom rules to fit your project needs. To view detailed instructions and additional information about the Project Setup Tool, visit the documentation.
- Try Out Building Blocks. Building Blocks is a Unity extension that helps you discover and quickly integrate features like hand tracking, Passthrough, and voice chat via drag-and-drop functionality. After dropping a feature block into your project, all dependencies are automatically installed so you can start leveraging the feature in your build. To learn more about Building Blocks, visit the documentation.
- Download Meta XR Simulator. Meta XR Simulator is a lightweight XR runtime built for developers that enables the simulation of Meta Quest headsets and features on the API level. It makes day-to-day development easier by letting you test and debug apps without putting on and taking off a headset. It also helps scale automation by simplifying the setup of your testing environment. To start using Meta XR Simulator, visit the download page for Windows and Mac in the Developer Center, or download directly from Unity Package Manager. To learn more about Meta XR Simulator, visit the documentation and watch this tutorial video.
Now that you’re set up with basic steps and features for Unity, we recommend diving deeper into how you can build immersive experiences. Developing apps for Meta Quest doesn’t require extensive experience, but if you’re new to mixed reality, we recommend reviewing our
MR Design Guidelines to better understand what mixed reality is, how it can be used, and the core capabilities we offer to power these types of experiences. We don’t recommend using Unity to build 2D apps for Meta Quest devices.
After getting familiar with the basics of mixed reality with the guide above, you can visit the following pages to reduce setup time and learn key considerations:
Mixed reality apps built on Meta Horizon OS are powered by three primary capabilities: Passthrough, Scene, and Spatial Anchors. Below you can find an overview as well as links to technical documentation that can help with integration.
- Passthrough: This capability provides a real-time 3D visualization of the physical world. The Passthrough API allows you to integrate that visualization with your experiences and gives users a whole new way to experience their physical environment. To learn more, visit the documentation.
- Scene: This capability empowers you to quickly build complex and scene-aware experiences with rich interactions in the user’s physical environment. Scene provides a geometric and semantic representation of the user’s space so you can build for use cases that involve accurate physics, static occlusion, and navigation against the physical world. To learn more, visit the documentation.
- Spatial Anchors: This capability allows you to support persistent objects within a user’s environment, enabling a more familiar and consistent experience across sessions. Spatial Anchors provide a world-locked frame of reference that gives a position and orientation to a virtual object in the physical world, ensuring that objects are in the same position the next time a user enters your app. To learn more, visit the documentation.
To provide you with greater support in setting up and navigating mixed reality development, we’ve built
Mixed Reality Utility Kit (MRUK), a rich set of utilities and tools to perform common operations when building spatially-aware apps. MRUK provides utilities involving scene queries, graphical helpers, and development tools to make it easier to program against the physical world, allowing you to focus on what makes your app unique.
These steps and resources provide you with an optimal jumping-off point to start building out your idea in Unity. Many of these capabilities and features are also available for Unreal and Native, and you can find out more in their respective documentation pages (
Unreal |
Native).
Getting Started with Meta Spatial SDK
Meta Spatial SDK lets you leverage your existing skills and development knowledge to build enhanced mobile apps for fully immersive, blended, or 2D panel environments. With the ability to port existing mobile apps or enhance existing ones with unique Meta spatial features in an expansive 3D space, you can deliver innovative experiences that feel simultaneously novel and familiar.
Whether you’re looking to build a new app or enrich an existing app for the Meta Horizon ecosystem, you’ll want to first download
Meta Spatial Editor, a spatial composition tool that enables you to import, organize, and transform your assets into visual compositions and export them into Spatial SDK projects.
Spatial Editor provides a host of functionalities to support your vision, including the ability to lay out 2D and 3D objects without writing code, assign logic to objects directly in the editor, and leverage tooling that’s familiar to 3D artists and designers.
If you want to build a fully immersive or mixed reality app, our documentation provides you with
tutorials on building your first Spatial SDK project. Leveraging these resources will help you get familiar with key functionalities and processes, such as modifying UI and layouts, adding models to your scene, displaying a video, adding and modifying cubes, and more.
If you want to bring an existing app to Meta Horizon,
this tutorial walks you through the steps of integrating Spatial SDK into a template Android phone app. You can follow along using your own app, or use the provided template via GitHub. We also
provide you with steps to combine immersive activities with 2D Android activities from your phone app, making it even easier to bring immersion into your project.
No matter what type of experience you’re trying to build with Spatial SDK, you can also benefit from exploring showcase apps:
- Focus: Focus is a mixed reality app that shows you how to build a productivity app and extend spatial screens. Focus demonstrates panel and object management, enabling the creation, reuse, and destruction of interactive elements within varied environments.
- Geo Voyage: Geo Voyage is a mixed reality app that demonstrates how to create apps that enhance learning experiences for users. This app guides you through the process of integrating Llama 3 with additional tools to develop an AI learning agent, integrate panels with virtual objects using a custom Entity Component System (ECS), and use physical-world data from Google Maps API to transition users from a pin on a virtual object to a fully immersive view of the physical world.
- Media View: Media View is a mixed reality app that shows you how to build a spatialized media viewing experience that takes advantage of the space around users for a variety of content. You can reference this app to understand concepts and code required to visually organize media content, display various formats of content in space at the same time, and more.
Getting Started with 2D and Web-Based Experiences
One of the biggest announcements from Meta Connect was the addition of 2D app support for the Meta Horizon Store, giving developers more distribution options to find and grow an audience with their 2D app experiences. 2D apps can be built using WebXR, PWAs, or Android Native.
If you want to build a 2D app, WebXR can help you build out your idea. We recommend checking out the
WebXR workflow to get familiar with fundamental concepts and tools before diving into a
two-hour tutorial on getting started with WebXR. Before shipping your WebXR app to the Meta Horizon Store, you’ll also want to check out our comprehensive guide on
WebXR performance optimization to better understand best practices, causes of bottlenecks, simple tricks for enhanced visuals like Fixed Foveated Rendering, and much more.
If you want to bring an existing 2D app to the Meta Horizon ecosystem, you can learn more about how
PWAs can provide a similar experience to mixed reality apps on Meta Quest. Additionally, 2D apps can be launched as native Android apps on 2D panels using familiar frameworks like Android Studio, Java, Kotlin, and Jetpack. We’ve built out a guide on
migrating 2D apps to Meta Horizon that can help you understand what dependencies may need to be removed based on system capabilities.
Looking Ahead
Quest 3S and Meta Horizon OS give you more options to turn your ideas into fun, engaging, and high-quality experiences than ever before. With resources and development paths built for mixed reality, 2D, and web-based experiences, you can find the guidance you need to design, develop, and distribute your vision to a growing audience of people eager to explore what Meta Quest has to offer. We’ll continue expanding platform support, strengthening development paths, and partnering with the developer community to understand how we can serve you better.
We hope you found this guide helpful. To stay up to date on the latest news, tutorials, and resources, be sure to follow us on
X and
Facebook, and subscribe to our monthly newsletter in your
Developer Dashboard settings.