### Get Started with Haptics Studio (Unity) Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt A guide to getting started with Haptics Studio. Covers initial setup and usage for creating and editing haptic effects for Meta Quest applications. ```csharp using UnityEngine; public class HapticsStudioGetStarted : MonoBehaviour { // This script is a placeholder. Haptics Studio is an external tool. void Start() { Debug.Log("Getting Started with Haptics Studio: 1. Launch Haptics Studio from your Meta XR development tools. 2. Import audio files or create haptic designs from scratch. 3. Use the editor to shape the haptic experience. 4. Export the design as an OVRHapticsClip asset. 5. Import the asset into your Unity project."); } } ``` -------------------------------- ### Get Started with Haptics SDK (Unity) Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt A guide to getting started with the Unity Haptics SDK. Covers initial setup and integration steps for adding haptic feedback capabilities to Meta Quest projects. ```csharp using UnityEngine; using Meta.XR.Haptics; public class HapticsSDKInitializer : MonoBehaviour { void Start() { // The Haptics SDK is typically initialized automatically when OVRManager is present // and the SDK is correctly imported into the Unity project. if (OVRHaptics.Instance != null) { Debug.Log("Haptics SDK initialized successfully."); // You can now use OVRHaptics.Instance to play clips. } else { Debug.LogError("Haptics SDK failed to initialize. Ensure the SDK is imported and OVRManager is in the scene."); } } } ``` -------------------------------- ### Get Started with Meta XR Simulator in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Install and begin using the Meta XR Simulator within your Unity project. This guide provides the initial steps for setting up the simulator to aid in XR application development and testing. Requires Unity. ```csharp using Meta.XR.Simulator; using UnityEngine; public class XRSimulatorSetup : MonoBehaviour { public XRSimulator rig; void Awake() { // Ensure the XR Simulator rig is present in the scene. // If not, you might need to add it via the Unity Editor. if (rig == null) { rig = FindObjectOfType(); } if (rig != null) { Debug.Log("Meta XR Simulator found and ready."); // You can now configure simulator settings or start simulations. // Example: rig.SetSimulatorMode(SimulatorMode.Headset); } else { Debug.LogError("Meta XR Simulator rig not found in the scene."); } } } ``` -------------------------------- ### Getting Started with Meta XR Audio Plugin for FMOD Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Learn how to set up and get started with the Meta XR Audio Plugin for FMOD. This guide covers the initial requirements and setup steps for integrating spatial audio capabilities into your FMOD projects. ```markdown - [Meta XR Audio Plugin for FMOD - Getting Started](https://developers.meta.com/horizon/llmstxt/documentation/unreal/meta-xr-audio-sdk-fmod-req-setup.md): Learn about meta xr audio sdk fmod req setup.html in this documentation. ``` -------------------------------- ### Configure Unity Projects with Project Setup Tool Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt This guide explains how to configure Unity projects for Meta Quest development using the Project Setup Tool. It covers utilizing custom Configuration Tasks to streamline the setup process and ensure compatibility. ```csharp // This documentation pertains to using a tool, not direct code. // The Project Setup Tool typically runs outside of the game's runtime. // Example of how a custom configuration task might be structured: using UnityEditor; using UnityEditor.XR.Project \ namespace Meta.XR.Tools.ProjectSetup { public class CustomXRConfigurationTask : IProjectSetupTask { public string DisplayName => "Configure Custom XR Settings"; public void Execute(ProjectSetupOptions options) { // Code to modify XR Plugin Management settings, Player Settings, etc. Debug.Log("Executing Custom XR Configuration Task."); // Example: XRGeneralSettings.Instance.Manager.TrySetConfigurationProvider(...); } } } ``` -------------------------------- ### Getting Started With Platform Solutions Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Set up your development environment, integrate the Meta Horizon platform SDK, and implement platform features for Meta Horizon Store apps. ```APIDOC ## Getting Started With Platform Solutions ### Description Set up your development environment, integrate the Meta Horizon platform SDK, and implement platform features for Meta Horizon Store apps. ### Method N/A (Documentation Link) ### Endpoint N/A (Documentation Link) ### Parameters N/A ### Request Example N/A ### Response N/A ### Documentation Link https://developers.meta.com/horizon/llmstxt/documentation/unity/ps-pgsg.md ``` -------------------------------- ### Get Started with Acoustic Ray Tracing in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Implement Acoustic Ray Tracing in Unity using the Meta XR Audio SDK for immersive audio experiences. This guide covers the initial setup and core functionalities. ```csharp using UnityEngine; using Meta.XR.Audio; public class AcousticSetup : MonoBehaviour { void Start() { // Ensure the MetaXR_AcousticRayTracing component is present in the scene if (FindObjectOfType() == null) { Debug.LogError("MetaXR_AcousticRayTracing component not found in the scene. Please add it."); } // Further setup steps might involve configuring audio sources and listeners. } } ``` -------------------------------- ### Get Started with Platform Solutions Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Integrate Meta Horizon platform solutions into Unity apps using Meta XR SDK, configure environment, and implement platform features. ```APIDOC ## Get Started with Platform Solutions ### Description Integrate Meta Horizon platform solutions into Unity apps using Meta XR SDK, configure environment, and implement platform features. ### Method GET ### Endpoint /llmstxt/documentation/unity/ps-get-started.md ### Parameters #### Path Parameters None #### Query Parameters None ### Request Example None ### Response #### Success Response (200) Documentation content for getting started with platform solutions. #### Response Example ``` (Documentation content will be here) ``` ``` -------------------------------- ### Requirements and Setup for Meta XR Audio SDK for Wwise in Unreal Engine Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Set up the Meta XR Audio SDK for Wwise in Unreal Engine. This guide details the installation of Wwise, downloading the SDK plugin, and configuring it for Unreal Engine projects. ```markdown - [Requirements and Setup for the Meta XR Audio SDK for Wwise in Unreal Engine](https://developers.meta.com/horizon/llmstxt/documentation/unreal/meta-xr-audio-sdk-wwise-req-setup.md): Set up Meta XR Audio SDK for Wwise in Unreal Engine by installing Wwise, downloading the SDK plugin, and configuring the plugin for use in Unreal Engine projects. ``` -------------------------------- ### Getting started with React Native apps on Meta Horizon OS Source: https://developers.meta.com/horizon/llmstxt/documentation/android-apps/llms.txt Learn about developing React Native apps on Meta Horizon OS. ```APIDOC ## Getting started with React Native apps on Meta Horizon OS ### Description Learn about developing React Native applications on Meta Horizon OS. ### Method N/A (Documentation Link) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A **Documentation Link:** https://developers.meta.com/horizon/llmstxt/documentation/android-apps/react-native-apps.md ``` -------------------------------- ### Platform Development Setup Source: https://developers.meta.com/horizon/llmstxt/documentation/spatial-sdk/llms.txt Guides on setting up the Android development environment, integrating the Android Platform SDK, and initializing platform features for Meta Horizon apps. ```APIDOC ## Platform Development Setup ### Description Set up your Android development environment, integrate the Android Platform SDK, and initialize platform features asynchronously for Meta Horizon apps. ### Method N/A (Setup Guide) ### Endpoint N/A (Setup Guide) ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Set Up Android Development Environment for Meta Horizon Platform Source: https://developers.meta.com/horizon/llmstxt/documentation/android-apps/llms.txt Guides on setting up the Android development environment, integrating the Android Platform SDK, and initializing platform features asynchronously. This is crucial for starting Android app development on the Meta Horizon Platform. ```markdown - [Set Up for Platform Development with Android Apps](https://developers.meta.com/horizon/llmstxt/documentation/android-apps/ps-setup.md): Set up Android development environment, integrate Android Platform SDK, and initialize platform features asynchronously. ``` -------------------------------- ### Getting Started with Meta XR Simulator for Native Development Source: https://developers.meta.com/horizon/llmstxt/documentation/native/llms.txt This snippet covers the installation and configuration of the Meta XR Simulator for native development. It enables testing and debugging of OpenXR applications. ```bash # Download the Meta XR Simulator installer from the Meta Developer website. # Follow the on-screen instructions for installation. # Ensure OpenXR runtime is correctly configured. ``` -------------------------------- ### Setup Oculus Audio Profiler for Unity Projects Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Guide to installing and configuring the Oculus Audio Profiler for Unity development. Supports profiling for FMOD, Wwise, and native projects. ```csharp // Example placeholder for profiler setup // Configuration is typically done via editor menus or project settings Debug.Log("Oculus Audio Profiler setup complete."); ``` -------------------------------- ### Getting Started with Meta XR Audio Plugin for Unreal Native Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Integrate the Meta XR Audio Plugin into Unreal Engine projects for advanced spatial audio capabilities. This guide covers the requirements and setup for 3D sound experiences. ```markdown - [Meta XR Audio Plugin for Unreal Native - Getting Started](https://developers.meta.com/horizon/llmstxt/documentation/unreal/meta-xr-audio-sdk-unreal-req-setup.md): Integrate Meta XR Audio Plugin into Unreal Engine projects for spatial audio capabilities and 3D sound experiences. ``` -------------------------------- ### Getting Started with Controller Input and Tracking in Unreal Engine Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Begin implementing controller input and tracking in Unreal Engine for VR applications using the Meta XR plugin. This guide provides foundational steps for VR development. ```Blueprint // Initial setup for controller input and tracking using Meta XR plugin. ``` -------------------------------- ### Getting Started with Meta XR Simulator for Unreal Engine Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Begin developing Meta XR Simulator applications using Unreal Engine. This guide covers essential aspects like input simulation, session capture, and layer rendering to facilitate XR application development and testing. Familiarize yourself with Unreal Engine's XR development tools. ```Blueprint { "feature": "Meta XR Simulator Setup", "engine": "Unreal Engine", "key_features": [ "Input Simulation", "Session Capture", "Layer Rendering" ] } ``` -------------------------------- ### Setup your first WebXR project Source: https://developers.meta.com/horizon/llmstxt/documentation/web/llms.txt Create a WebXR project from scratch using IWSDK, including configuration of dependencies, features, and the development environment. ```APIDOC ## Setup your first WebXR project ### Description Create a WebXR project from scratch with IWSDK, configuring dependencies, features, and development environment. ### Method N/A (Documentation Guide) ### Endpoint N/A (Documentation Guide) ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Set Up for Platform Development with Android Apps Source: https://developers.meta.com/horizon/llmstxt/documentation/android-apps/llms.txt Guides on setting up the Android development environment, integrating the Android Platform SDK, and initializing platform features asynchronously. ```APIDOC ## Set Up for Platform Development with Android Apps ### Description Set up your Android development environment, integrate the Android Platform SDK, and initialize platform features asynchronously. ### Method N/A (Documentation Link) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A **Documentation Link:** https://developers.meta.com/horizon/llmstxt/documentation/android-apps/ps-setup.md ``` -------------------------------- ### Automate UnityXR Interaction Rig Setup in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Automate the addition of the UnityXR Comprehensive Interaction Rig to scenes using the UnityXR Interaction Rig Quick Action utility. This simplifies the setup process for XR interactions. ```csharp using UnityEngine; using Oculus.Interaction.Editor; public class RigSetupUtility : MonoBehaviour { // Logic to invoke the UnityXR Interaction Rig Quick Action } ``` -------------------------------- ### Automate Grabbable Object Setup with Grab Quick Action Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Utilize the Interaction SDK's Grab Quick Action in Unity to automate the setup of grabbable objects in your scenes. This simplifies the process of making objects interactable for grabbing. ```csharp using UnityEngine; using Oculus.Interaction.Editor; public class QuickActionSetup : MonoBehaviour { [SerializeField] private GameObject objectToMakeGrabbable; public void MakeGrabbable() { if (objectToMakeGrabbable != null) { // This is a conceptual example. The actual Quick Action is an editor tool. // In the editor, you would select the object and use the Quick Action menu. Debug.Log("Applying Grab Quick Action to: " + objectToMakeGrabbable.name); // Example of what the Quick Action might do internally: // GrabInteractable grabInteractable = objectToMakeGrabbable.AddComponent(); // ... other setup steps ... } else { Debug.LogError("Object to make grabbable is not assigned."); } } } ``` -------------------------------- ### Troubleshooting and FAQ for AI Building Blocks in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt This guide addresses common issues and frequently asked questions related to setting up, configuring, and optimizing AI Building Blocks in Unity for Meta Quest projects. It aims to resolve setup, performance, and integration problems. ```markdown ## Troubleshooting and FAQ for AI Building Blocks This section serves as a troubleshooting guide and FAQ for developers using Meta's AI Building Blocks within the Unity engine for Meta Quest projects. It aims to help resolve common challenges encountered during setup, configuration, performance tuning, and integration. **Common Issues & Solutions:** * **Provider Not Found:** * **Symptom:** An Agent fails to find or initialize a required Provider. * **Solution:** Ensure the Provider is correctly registered in the AI Building Blocks system, check for typos in Provider names, and verify that the necessary SDK packages are imported. * **Performance Degradation:** * **Symptom:** AI tasks are slow, causing frame drops or unresponsiveness. * **Solution:** Optimize Provider selection (e.g., prefer local/on-device inference if feasible), check network latency for cloud providers, profile AI task execution times, and consider batching requests if applicable. * **Integration Errors:** * **Symptom:** Errors occur when calling AI tasks from Unity scripts. * **Solution:** Verify that the correct task interfaces and request/response types are being used. Ensure asynchronous operations are handled correctly (e.g., using `await`). Check API keys and authentication for external services. * **FAQ:** * **Q: How do I choose between Cloud, Local, and On-Device inference?** * **A:** Cloud offers the most powerful models but has latency and requires connectivity. Local/On-Device offers lower latency and privacy but may have less powerful models or higher resource usage. * **Q: Can I use custom AI models?** * **A:** Yes, you can create custom Providers to integrate your own trained models or third-party services. **Dependencies:** * Unity Editor * Meta Quest device * Meta AI Building Blocks SDK **Outputs:** * Resolved issues and improved understanding of the AI Building Blocks system. ``` -------------------------------- ### Automate OVR Interaction Rig Setup with Quick Action (Unity) Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Automates the addition of the Comprehensive Interaction Rig to Unity scenes using the OVR Interaction Rig Quick Action utility. This simplifies the initial setup for VR interactions. ```csharp // No specific code snippet provided in the text for this action. // This is a description of a Unity Editor utility. ``` -------------------------------- ### Device Setup Source: https://developers.meta.com/horizon/llmstxt/documentation/native/llms.txt Learn about mobile device setup. ```APIDOC ## Mobile Device Setup ### Description Learn about mobile device setup. ### Method N/A (This is a guide, not an API endpoint) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Setup for Platform Development with Kotlin Android Apps Source: https://developers.meta.com/horizon/llmstxt/documentation/android-apps/llms.txt Provides guidance on setting up your development environment for Meta Horizon Platform development with Kotlin Android apps. ```APIDOC ## Setup for Platform Development with Kotlin Android Apps ### Description Guidance on setting up your development environment for Meta Horizon Platform development using Kotlin and Android applications. This includes necessary SDKs and configurations. ### Method GET ### Endpoint /setup/kotlin/android ### Parameters No parameters required for this setup endpoint. ### Response #### Success Response (200) - **setupSteps** (array) - A list of steps required for setting up the development environment. - **stepNumber** (integer) - The sequence number of the step. - **instruction** (string) - The instruction for the setup step. - **required** (boolean) - Indicates if the step is mandatory. #### Response Example ```json { "setupSteps": [ { "stepNumber": 1, "instruction": "Install Android Studio.", "required": true }, { "stepNumber": 2, "instruction": "Add Meta Horizon SDK dependency to your project.", "required": true }, { "stepNumber": 3, "instruction": "Configure necessary permissions in the AndroidManifest.xml file.", "required": true } ] } ``` ``` -------------------------------- ### Invite to App Quickstart Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Implement Invite to App feature in VR/MR apps using Platform SDK and Unity. ```APIDOC ## Invite to App Quickstart ### Description Implement Invite to App feature in VR/MR apps using Platform SDK and Unity. ### Method (Methods related to Invite to App using Platform SDK and Unity) ### Endpoint /llmstxt/documentation/unity/ps-invite-quickstart.md ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body (Details depend on Platform SDK and Unity implementation for Invite to App) ### Request Example ```json { "example": "(Example usage of Platform SDK and Unity for Invite to App)" } ``` ### Response #### Success Response (200) Indicates successful setup for Invite to App. #### Response Example ```json { "example": "(Success response example for Invite to App quickstart)" } ``` ``` -------------------------------- ### Get Started with Platform Solutions Source: https://developers.meta.com/horizon/llmstxt/documentation/native/llms.txt Integrate Meta Horizon platform solutions by downloading Oculus Platform SDK and configuring development environment. ```APIDOC ## Get Started with Platform Solutions ### Description Integrate Meta Horizon platform solutions by downloading Oculus Platform SDK and configuring development environment. ### Method Not specified ### Endpoint Not specified ### Parameters Not specified ### Request Example Not specified ### Response Not specified ### Response Example Not specified ``` -------------------------------- ### Unreal Engine Development Guides Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt This section covers various guides and references for Unreal Engine development, including optimizing deployment, accessing reference materials, implementing hand tracking, and understanding scene actor functionalities. ```APIDOC ## Reduce App Deploy Time During Development ### Description Optimize Unreal Engine app development by enabling 'Deploy compiled .so directly to device' to reduce deployment time. ### Method N/A (Configuration Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Unreal Developer Reference ### Description Access Unreal Engine reference materials, including Blueprints, controller input mapping, console variables, and version compatibility. ### Method N/A (Reference Documentation) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Train Hand Tracking Sample for Unreal Engine ### Description Implement hand tracking in Unreal Engine using the HandsInteractionTrainMap sample for interactive 2D/3D experiences. ### Method N/A (Implementation Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Unreal Samples ### Description Learn about unreal samples.html in this documentation. ### Method N/A (Information) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Scene Actor Functionalities (deprecated) ### Description Utilize deprecated OculusXRSceneActor APIs for scene capture, population, and entity management in Unreal projects. ### Method N/A (Deprecated API Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Importing Scene Entity Meshes (deprecated) ### Description Import and configure scene entity meshes for OculusXRSceneActor in Unreal Engine projects, now deprecated. ### Method N/A (Deprecated API Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Scene Mesh (deprecated) ### Description Implement scene mesh functionality in Unreal Engine using OculusXRSceneActor and MR Utility Kit APIs. ### Method N/A (Deprecated API Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Migrate to MR Utility Kit ### Description Migrate existing Unreal apps from OculusXRSceneActor to MR Utility Kit, leveraging new features and APIs. ### Method N/A (Migration Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Scene Overview ### Description Implement Scene in Unreal to build complex, scene-aware Mixed Reality experiences with rich interactions and spatial awareness. ### Method N/A (Implementation Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Unreal Scene Sample ### Description Implement Scene in Unreal Engine using Scene Anchors, Passthrough stereo layer, and quad-layer rendering. ### Method N/A (Sample Implementation) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Semantic Classification for Scene ### Description Access semantic classification labels for scene anchors using UOculusSceneObjectComponent in Unreal projects. ### Method N/A (Feature Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Scene Tutorial ### Description Implement a mixed reality scene in Unreal Engine using Meta XRScene Actor and Passthrough features. ### Method N/A (Tutorial) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Set Target Device and Get Device at Runtime in Unreal Engine ### Description Configure Unreal Engine project settings to set target Meta Quest device and retrieve device type at runtime. ### Method N/A (Configuration Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Setting up the Meta XR plugin for your project ### Description Configure Meta XR plugin for Unreal Engine projects, enabling Meta Horizon OS application development. ### Method N/A (Setup Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Passthrough Samples ### Description Implement passthrough API in Unreal Engine projects, creating mixed reality experiences with various styling and lighting effects. ### Method N/A (Sample Implementation) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Shared Scene Sample ### Description Implement shared scene experiences in Unreal using Shared Spatial Anchors, Scene, and Passthrough APIs. ### Method N/A (Sample Implementation) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Unreal Showcases ### Description Explore Meta Quest development with Unreal Showcases, demonstrating graphics, hand tracking, and multiplayer features. ### Method N/A (Showcase Information) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Spatial Anchors Best Practices ### Description Implement spatial anchors best practices in Unity for accurate, room-scale, and multi-room mixed reality experiences. ### Method N/A (Best Practices Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Spatial Anchors Unreal Blueprints Reference ### Description Implement Spatial Anchors in Unreal using Blueprints for anchor creation, saving, discovery, sharing, and management. ### Method N/A (Blueprint Reference) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A --- ## Spatial Anchors Unreal C++ Reference ### Description Implement Spatial Anchors in Unreal Engine using C++ APIs for anchor creation, discovery, saving, and sharing. ### Method N/A (C++ Reference) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Group Presence Quickstart Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Implement Group Presence in Meta Horizon apps using GroupPresenceOptions and SetPresence function for joinable states. ```APIDOC ## Group Presence Quickstart ### Description Implement Group Presence in Meta Horizon apps using GroupPresenceOptions and SetPresence function for joinable states. ### Method (Methods related to setting presence, e.g., SetPresence function) ### Endpoint /llmstxt/documentation/unity/ps-group-presence-quickstart.md ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **GroupPresenceOptions** (object) - Required - Options for setting user presence. - **SetPresence function** (function) - Required - Function to call to set presence. ### Request Example ```json { "example": "(Example usage of SetPresence with GroupPresenceOptions)" } ``` ### Response #### Success Response (200) Indicates successful setup of Group Presence. #### Response Example ```json { "example": "(Success response example for Group Presence quickstart)" } ``` ``` -------------------------------- ### Invite to App Quickstart Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Implement the Invite to App feature in immersive VR/MR apps using the Platform SDK and Group Presence APIs. ```APIDOC ## Invite to App Quickstart ### Description Implement the Invite to App feature in immersive VR/MR apps using the Platform SDK and Group Presence APIs. ### Method N/A (This is a documentation link, not an API endpoint) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Explore ComprehensiveRigExample Scene in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt This documentation guides users through the ComprehensiveRigExample scene in Meta XR Interaction SDK. It demonstrates implementing various interactions, gestures, and manipulations in Unity. ```markdown - ComprehensiveRigExample Scene: Explore Meta XR Interaction SDK's ComprehensiveRigExample scene to implement various interactions, gestures, and manipulations in Unity. ``` -------------------------------- ### Set Up for Platform Development with Unreal Engine Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Learn about ps setup.html in this documentation. ```APIDOC ## Set Up for Platform Development with Unreal Engine ### Description Learn about ps setup.html in this documentation. ### Method N/A (This is a setup guide, not a specific API endpoint) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Implement Voice Input in Unity using Voice SDK Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt This tutorial demonstrates how to implement voice input in Unity using the Meta Voice SDK and Wit.ai for intent recognition and processing. It covers setting up the SDK and integrating voice commands into your application. ```csharp using UnityEngine; using Meta.Voice; using Meta.Wit.WitAi; public class VoiceInputManager : MonoBehaviour { public Wit wit; void Start() { // Initialize Voice SDK and Wit.ai integration if (wit == null) { wit = FindObjectOfType(); } if (wit != null) { wit.Activate(); Debug.Log("Voice SDK Activated."); } else { Debug.LogError("Wit component not found. Please add Wit to your scene."); } } // Example of handling voice events (e.g., intent recognized) public void OnWitResponse(WitResponseNode witResponse) { // Process the recognized intent and entities from witResponse Debug.Log("Wit Response: " + witResponse.ToString()); } void OnDestroy() { // Deactivate Voice SDK when the object is destroyed if (wit != null) { wit.Deactivate(); Debug.Log("Voice SDK Deactivated."); } } } ``` -------------------------------- ### Set Up a New WebXR Project with IWSDK Source: https://developers.meta.com/horizon/llmstxt/documentation/web/llms.txt Guide to creating a new WebXR project from scratch using the Immersive Web SDK (IWSDK). It covers essential steps like configuring project dependencies, enabling features, and setting up the development environment for Meta Horizon. ```bash # Example command to create a new project (conceptual) iwsdk create my-webxr-project --template=webxr ``` ```json // Example project configuration (package.json or similar) { "dependencies": { "@meta/iw-sdk": "^1.0.0" }, "iwsdk": { "features": [ "webxr", "scene-understanding" ] } } ``` -------------------------------- ### Getting Started with Progressive Web Apps (PWAs) Source: https://developers.meta.com/horizon/llmstxt/documentation/web/llms.txt A beginner's guide to configuring a website as a Progressive Web App (PWA). It details the creation of a Web App Manifest file, including essential fields and optional settings required for PWA functionality on Meta platforms. ```json // Basic Web App Manifest (manifest.json) { "name": "My PWA", "short_name": "PWA", "start_url": "/", "display": "standalone", "background_color": "#ffffff", "theme_color": "#3367D6" } ``` -------------------------------- ### Getting Started with WebXR PWAs Source: https://developers.meta.com/horizon/llmstxt/documentation/web/llms.txt Configure WebXR PWAs for immersive launch experiences by implementing the requestSession API after the page has loaded. ```APIDOC ## Getting Started with WebXR PWAs ### Description Configure WebXR PWAs for immersive launch experiences by implementing requestSession API after page load. ### Method N/A (Documentation Guide) ### Endpoint N/A (Documentation Guide) ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Getting Started with Webhooks Source: https://developers.meta.com/horizon/llmstxt/documentation/android-apps/llms.txt Implement Webhooks to receive real-time notifications for specific events, such as multiplayer join intents and order status updates. ```APIDOC ## Getting Started with Webhooks ### Description Implement Webhooks to receive real-time notifications for specific events, such as multiplayer join intents and order status updates. ### Method N/A (Documentation Link) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A **Documentation Link:** https://developers.meta.com/horizon/llmstxt/documentation/android-apps/ps-webhooks-getting-started.md ``` -------------------------------- ### Getting Started with PWAs Source: https://developers.meta.com/horizon/llmstxt/documentation/web/llms.txt Configure a website as a Progressive Web App (PWA) by creating a Web App Manifest with the necessary fields and optional settings. ```APIDOC ## Getting Started with PWAs ### Description Configure a website as a PWA by creating a Web App Manifest with required fields and optional settings. ### Method N/A (Documentation Guide) ### Endpoint N/A (Documentation Guide) ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Introduction to Meta XR Audio SDK for Wwise in Unreal Engine Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Introduction to using the Meta XR Audio SDK with Wwise within Unreal Engine. This documentation provides an overview of the integration and capabilities. ```markdown - [Introduction to the Meta XR Audio SDK for Wwise in Unreal Engine](https://developers.meta.com/horizon/llmstxt/documentation/unreal/meta-xr-audio-sdk-wwise-intro.md): Learn about meta xr audio sdk wwise intro.html in this documentation. ``` -------------------------------- ### Core Platform Integration Source: https://developers.meta.com/horizon/llmstxt/documentation/native/llms.txt Documentation for getting started with Platform Solutions, understanding the platform overview, and accessing release notes. ```APIDOC ## Getting Started With Platform Solutions ### Description Set up development environment, integrate Meta Horizon Platform SDK, and implement platform features for Meta Horizon Store apps. ### Method N/A (Documentation Link) ### Endpoint N/A (Documentation Link) ### Parameters N/A ### Request Example N/A ### Response N/A ## Platform Solutions ### Description Integrate Meta Horizon platform features into native, Unity, and Unreal apps for social VR experiences. ### Method N/A (Documentation Link) ### Endpoint N/A (Documentation Link) ### Parameters N/A ### Request Example N/A ### Response N/A ## Platform SDK Release Notes Archive ### Description Access Oculus Platform SDK release notes archive, detailing changes, features, and fixes across multiple versions. ### Method N/A (Documentation Link) ### Endpoint N/A (Documentation Link) ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Sample Apps Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Implement Meta Horizon platform features using sample apps for Unity and Unreal development environments. ```APIDOC ## Sample Apps ### Description Implement Meta Horizon platform features using sample apps for Unity and Unreal development environments. ### Method N/A (This is a guide to sample applications, not specific API endpoints) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Webhooks Getting Started Source: https://developers.meta.com/horizon/llmstxt/documentation/spatial-sdk/llms.txt Implement Webhooks to receive real-time notifications for specific events, such as multiplayer join intents and order status updates. ```APIDOC ## Webhooks Getting Started ### Description Implement Webhooks to receive real-time notifications for specific events, such as multiplayer join intents and order status updates. ### Method N/A (Guide) ### Endpoint N/A (Guide) ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Native Development - Get Started with the Platform SDK Source: https://developers.meta.com/horizon/llmstxt/documentation/native/llms.txt Set up the Oculus Platform SDK for native C++ development on Rift and mobile platforms. ```APIDOC ## Native Development - Get Started with the Platform SDK ### Description Set up the Oculus Platform SDK for native C++ development on Rift and mobile platforms. ### Method N/A (Documentation Link) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A **Documentation Link:** https://developers.meta.com/horizon/llmstxt/documentation/native/pc/ps-get-started.md ``` -------------------------------- ### Import Sample Projects from Meta XR SDK UPM Packages Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Utilize Unity Package Manager to import sample projects provided within Meta XR SDK UPM packages. These samples serve as valuable references for development and learning. ```bash # Steps to import UPM Package Samples: # 1. Ensure the relevant Meta XR SDK package is already imported via Unity Package Manager. # 2. Open the Package Manager window (Window > Package Manager). # 3. Select the imported Meta XR SDK package from the dropdown list. # 4. Look for a 'Samples' tab or section within the package details. # 5. Click the 'Import' button next to the sample project you wish to use. # The sample project will be copied into your Unity project's Assets folder, ready for exploration. ``` -------------------------------- ### Troubleshoot Acoustic Ray Tracing in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Troubleshoot common issues with Acoustic Ray Tracing in Unity, including problems with reverb, occlusion, and component configuration. This guide helps resolve setup and runtime errors. ```csharp using UnityEngine; using Meta.XR.Audio; public class AcousticTroubleshooter : MonoBehaviour { void CheckAcousticComponents() { // Example: Check if essential components are present and configured if (FindObjectOfType() == null) { Debug.LogError("MetaXR_AcousticRayTracing component is missing."); } // Check for issues with MetaXR_AcousticMaterial components on relevant GameObjects. // Check for correct setup of MetaXR_AcousticControlZone if used. } void Start() { CheckAcousticComponents(); } } ``` -------------------------------- ### Download and Setup Meta Spatial Editor Source: https://developers.meta.com/horizon/llmstxt/documentation/spatial-sdk/llms.txt Download and set up Meta Spatial Editor, configure system requirements, and create Spatial SDK projects. ```APIDOC ## Download and Setup Meta Spatial Editor ### Description Download and set up Meta Spatial Editor, configure system requirements, and create Spatial SDK projects. ### Method N/A (Setup Guide) ### Endpoint N/A (Setup Guide) ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### Meta XR Audio Plugin for Wwise - Ambisonic Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Implement ambisonic audio rendering in Wwise using the Meta XR Audio Plugin. This guide covers the setup of the ambisonic decoder and main mix bus for advanced audio. ```markdown - [Meta XR Audio Plugin for Wwise - Ambisonic](https://developers.meta.com/horizon/llmstxt/documentation/unreal/meta-xr-audio-sdk-wwise-ambisonic.md): Implement ambisonic audio rendering in Wwise using Meta XR Audio Plugin with ambisonic decoder and main mix bus. ``` -------------------------------- ### Get Started with Platform Solutions Source: https://developers.meta.com/horizon/llmstxt/documentation/native/llms.txt Integrate Meta Horizon platform solutions by downloading the Oculus Platform SDK and configuring your development environment. This provides the necessary tools and libraries to build Horizon-compatible applications. ```bash # Download the Oculus Platform SDK curl -O https://developer.oculus.com/downloads/unity/latest/OculusPlatformSDK.zip # Unzip the SDK unzip OculusPlatformSDK.zip # Follow the documentation for environment configuration and integration steps. ``` -------------------------------- ### Developing with Meta Spatial SDK Source: https://developers.meta.com/horizon/llmstxt/documentation/spatial-sdk/llms.txt Get started with developing spatial Android applications using the Meta Spatial SDK. This section covers leveraging the ECS architecture, 3D scene management, and input handling. ```markdown - [Developing with Spatial SDK](https://developers.meta.com/horizon/llmstxt/documentation/spatial-sdk/spatial-sdk-development.md): Develop spatial Android apps with Meta Spatial SDK, leveraging ECS, 3D scene management, and input handling. ``` -------------------------------- ### Implement Controller Input and Tracking in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt This tutorial covers implementing controller input and tracking in Unity using the Meta XR SDK and the OVRInput Class. It provides guidance on accessing controller data and integrating it into your VR applications. ```csharp using UnityEngine; using Meta.XR.Core.Input; public class ControllerInputHandler : MonoBehaviour { void Update() { // Check for button presses if (OVRInput.GetDown(OVRInput.Button.PrimaryIndexTrigger, OVRInput.Controller.RTouch)) { Debug.Log("Right Index Trigger Pressed"); } // Get controller position and rotation Vector3 rightControllerPosition = OVRInput.GetLocalControllerPosition(OVRInput.Controller.RTouch); Quaternion rightControllerRotation = OVRInput.GetLocalControllerRotation(OVRInput.Controller.RTouch); // Use controller data for your application logic } } ``` -------------------------------- ### Enable and Test Body Tracking in Meta XR Simulator Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Enable and test body tracking functionality within the Meta XR Simulator for Unity app development. This guide covers the setup process and debugging using the simulator's tools. Requires Meta XR Simulator and Unity. ```csharp using Meta.XR.Simulator; using UnityEngine; public class BodyTrackingTest : MonoBehaviour { public XRSimulator rig; void Start() { if (rig != null) { // Ensure body tracking is enabled in the simulator settings // rig.EnableBodyTracking(true); // You can then access body tracking data through standard Unity XR interfaces // For example, using XRBodyTracking.Instance.GetBodyPose(trackedBodyPart) } } void Update() { // Example: Check if body tracking data is available // if (XRBodyTracking.Instance.IsBodyTrackingActive()) // { // // Access and use body tracking data // } } } ``` -------------------------------- ### Build and Position Your First Panel Source: https://developers.meta.com/horizon/llmstxt/documentation/spatial-sdk/llms.txt A tutorial on how to build and position your first panel within the Meta Spatial SDK. ```APIDOC ## Build and Position Your First Panel ### Description A tutorial on how to build and position your first panel within the Meta Spatial SDK. ### Method GET ### Endpoint /spatial-sdk/spatial-sdk-panel-tutorial.md ### Parameters None ### Request Example ```json { "example": "GET /spatial-sdk/spatial-sdk-panel-tutorial.md" } ``` ### Response #### Success Response (200) - **tutorialSteps** (array) - Step-by-step instructions for building and positioning a panel. #### Response Example ```json { "example": { "tutorialSteps": [ "Create a new panel entity.", "Configure panel dimensions and properties.", "Set the panel's position and rotation in the scene.", "Add interactive elements to the panel." ] } } ``` ``` -------------------------------- ### Get Age Category API Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt Implement Get Age Category API in Unity apps to retrieve user age groups for Meta Horizon Store compliance. ```APIDOC ## Get Age Category API ### Description Implement Get Age Category API in Unity apps to retrieve user age groups for Meta Horizon Store compliance. ### Method N/A (Implementation Guide) ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ### Further Information [https://developers.meta.com/horizon/llmstxt/documentation/unity/ps-get-age-category-api.md](https://developers.meta.com/horizon/llmstxt/documentation/unity/ps-get-age-category-api.md) ``` -------------------------------- ### Meta XR Audio Plugin for Unreal Tutorial Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt A tutorial on implementing the Meta XR Audio Plugin in Unreal Engine. Learn to spatialize audio sources, add reverb effects, and render ambisonics for immersive audio. ```markdown - [Meta XR Audio Plugin for Unreal Tutorial](https://developers.meta.com/horizon/llmstxt/documentation/unreal/meta-xr-audio-sdk-unreal-tutorial.md): Implement Meta XR Audio Plugin in Unreal Engine to spatialize audio sources, add reverb, and render ambisonics. ``` -------------------------------- ### Get Device Type in Unreal Blueprints Source: https://developers.meta.com/horizon/llmstxt/documentation/unreal/llms.txt Retrieves the current Meta device type. This Unreal Blueprint uses the Get Device Type node and takes no arguments. ```unreal-blueprints Blueprint node to get the current Meta device type. ``` -------------------------------- ### Performance Optimization Guides Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt A collection of guides focused on optimizing Meta Quest applications for better performance, covering various aspects from art direction to draw call analysis and graphics jobs. ```APIDOC ## Art Direction for All-in-One VR Performance ### Description Optimize all-in-one VR performance by making informed art direction decisions on style, focus, and technical trade-offs. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Open World Games and Asset Streaming ### Description Implement asset streaming in Unity for open-world games, optimizing mesh and shader complexity, and reducing draw calls. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Performance and Optimization ### Description Optimize Meta Quest apps using techniques like profiling, GPU pipeline configuration, and art direction best practices. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Draw Call Cost Analysis for Meta Quest ### Description Analyze draw call costs for Meta Quest apps, optimizing CPU and GPU performance by minimizing material, mesh, and shader changes. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Graphics Jobs in Unity ### Description Enable Graphics Jobs in Unity for CPU performance savings using Multithreaded Rendering and Legacy mode. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Memory / RAM ### Description Understand Meta Quest memory limits, measure app PSS, and identify out-of-memory crashes using logcat and crash analytics. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Accurately Measure an App’s Per-Frame GPU Cost ### Description Measure an app's per-frame GPU cost using VrApi logs and disabling TimeWarp via ADB commands. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Basic Optimization Workflow for Meta Quest Apps ### Description Optimize Meta Quest app performance using profiling workflow to identify CPU or GPU bottlenecks and improve frame rates. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Boosting CPU and GPU Levels ### Description Optimize Meta Quest app performance by enabling higher CPU and GPU levels, dual-core mode, and dynamic resolution. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Using RenderDoc Meta Fork to Optimize Your App - Part 1 ### Description Optimize Meta Quest apps using RenderDoc Meta Fork to verify instanced stereo rendering, reduce temporary buffers, minimize shadow map overhead, and implement GPU instancing. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Using RenderDoc Meta Fork to Optimize Your App - Part 2 ### Description Optimize Meta Quest apps using RenderDoc Meta Fork to analyze rendering patterns, shader complexity, and LOD systems. ### Method N/A (Guide) ### Endpoint N/A (Guide) --- ## Unity Iteration Speed Best Practices ### Description Learn about Unity iteration speed best practices for Meta Quest development. ### Method N/A (Guide) ### Endpoint N/A (Guide) ``` -------------------------------- ### Implement Comprehensive Interaction Rigs in Unity Source: https://developers.meta.com/horizon/llmstxt/documentation/unity/llms.txt This guide focuses on implementing comprehensive interaction rigs in Unity using either OVR or UnityXR. It aims to create immersive VR experiences and interactions. ```markdown - Comprehensive Interaction Rig: Implement comprehensive interaction rigs in Unity using OVR or UnityXR for immersive VR experiences and interactions. ``` -------------------------------- ### Get Age Category API Source: https://developers.meta.com/horizon/llmstxt/documentation/native/llms.txt Implement Get Age Category API in native Meta Quest Android apps to retrieve user age categories. ```APIDOC ## Get Age Category API ### Description Implement Get Age Category API in native Meta Quest Android apps to retrieve user age categories. ### Method Not specified ### Endpoint Not specified ### Parameters Not specified ### Request Example Not specified ### Response Not specified ### Response Example Not specified ``` -------------------------------- ### Implement Server-to-Server REST API Calls (Kotlin Example) Source: https://developers.meta.com/horizon/llmstxt/documentation/android-apps/llms.txt Example of making server-to-server REST API calls using Kotlin's Ktor client to interact with Meta Horizon platform features securely. ```kotlin import io.ktor.client.HttpClient import io.ktor.client.request.* import io.ktor.client.statement.* import io.ktor.http.* import kotlinx.coroutines.runBlocking fun makeS2SApiCall(accessToken: String, endpoint: String, payload: String) { val client = HttpClient() runBlocking { try { val response: HttpResponse = client.post("https://api.oculus.com/v1/$endpoint") { header(HttpHeaders.Authorization, "Bearer $accessToken") contentType(ContentType.Application.Json) setBody(payload) } if (response.status == HttpStatusCode.OK) { val responseBody = response.bodyAsText() println("API call successful: $responseBody") } else { println("API call failed with status: ${response.status}") } } catch (e: Exception) { println("Error making API call: ${e.message}") } finally { client.close() } } } // Example usage: // val token = "YOUR_ACCESS_TOKEN" // val endpoint = "some_endpoint" // val payload = "{\"key\": \"value\"}" // makeS2SApiCall(token, endpoint, payload) ```