Getting head and finger orientation
Hey gang - glad to see a great support forum for the Oculus Quest 2 with Unity. I'm migrating an app from open XR to oculus to take advantage of the oculus hand tracking. I'm experiencing issues with the data (or lack of) and wondering if anyone can provide advice. I'm using our existing client/server framework to send data to the server. The data is being sent and received correctly - but the data is strange. The finger data never changes from the skeleton. During testing, I'm only sending the tip of the index finger on the right hand. The outcome is to get the amount of bend of each finger. The camera transform sends the correct data, and it's working great. We just can't figure out how to get the finger data to know the position of each finger. void Update() { // send the index finger data OVRPlugin.Skeleton skeleton; if (OVRPlugin.GetSkeleton(OVRPlugin.SkeletonType.HandRight, out skeleton)) foreach (var bone in skeleton.Bones) if (bone.Id == OVRPlugin.BoneId.Hand_Index3) _streamClient.SendPacket( StreamClient.CommandEnums.FingerRight0, MapToByte(bone.Pose.Orientation.x), MapToByte(bone.Pose.Orientation.y), MapToByte(bone.Pose.Orientation.z)); // send head data (pitch, yaw, roll) _streamClient.SendPacket( StreamClient.CommandEnums.pitchYawRoll, MapToByte(Camera.current.transform.localRotation.x), MapToByte(Camera.current.transform.localRotation.y), MapToByte(Camera.current.transform.localRotation.z)); } Any assistance is greatly appreciated - thanks in advance!Solved6.1KViews0likes8CommentsMeta Avatar v.29 Animation Locomotion
Hi all, I'm using the latest avatar SDK and I want to set up a local third person avatar with animated legs. I looked at the NetworkLoopbackExample sample scene, so I added the OVR Animation Behaviour script to the local avatar. However, the legs don't animate, they just stay still. Is there a way to make them move? Thanks in advance for any help.Solved2.5KViews0likes18CommentsMeta XR Core SDK 71.0.0 Import Bugs
Getting the following warnings and errors after updating from 69.0.2 -> 71.0.0 in Unity 6000.0.23f1 Library\PackageCache\com.meta.xr.sdk.core\Editor\OVRSceneVolumeEditor.cs(26,37): error CS0118: 'Editor' is a namespace but is used like a type Library\PackageCache\com.meta.xr.sdk.core\Editor\OVRSceneAnchorEditor.cs(26,37): error CS0118: 'Editor' is a namespace but is used like a type Library\PackageCache\com.meta.xr.sdk.core\Editor\OVRScenePlaneEditor.cs(27,36): error CS0118: 'Editor' is a namespace but is used like a type Library\PackageCache\com.meta.xr.sdk.core\Editor\OVRSemanticClassificationEditor.cs(26,48): error CS0118: 'Editor' is a namespace but is used like a type 'Meta.XR.MultiplayerBlocks.Shared.IAvatarBehaviour' is missing the class attribute 'ExtensionOfNativeClass'! UnityEditor.AssetDatabase:LoadAssetAtPath<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition> (string) Unity.Services.Deployment.Editor.Shared.Assets.ObservableAssets`1<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition>:AllAssetsPostprocessed (object,Unity.Services.Deployment.Editor.Shared.Assets.PostProcessEventArgs) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/ObservableAssets.Gen.cs:66) Unity.Services.Deployment.Editor.Shared.Assets.AssetPostprocessorProxy:OnPostprocessAllAssets (string[],string[],string[],string[],bool) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/AssetPostprocessorProxy.Gen.cs:24) UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets (string[],string[],string[],string[],string[],bool) GameObject (named 'FusionAvatarSdk28Plus') references runtime script in scene file. Fixing! UnityEditor.AssetDatabase:LoadAssetAtPath<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition> (string) Unity.Services.Deployment.Editor.Shared.Assets.ObservableAssets`1<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition>:AllAssetsPostprocessed (object,Unity.Services.Deployment.Editor.Shared.Assets.PostProcessEventArgs) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/ObservableAssets.Gen.cs:66) Unity.Services.Deployment.Editor.Shared.Assets.AssetPostprocessorProxy:OnPostprocessAllAssets (string[],string[],string[],string[],bool) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/AssetPostprocessorProxy.Gen.cs:24) UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets (string[],string[],string[],string[],string[],bool) 'Meta.XR.MultiplayerBlocks.Shared.IAvatarBehaviour' is missing the class attribute 'ExtensionOfNativeClass'! UnityEditor.AssetDatabase:LoadAssetAtPath<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition> (string) Unity.Services.Deployment.Editor.Shared.Assets.ObservableAssets`1<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition>:AllAssetsPostprocessed (object,Unity.Services.Deployment.Editor.Shared.Assets.PostProcessEventArgs) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/ObservableAssets.Gen.cs:66) Unity.Services.Deployment.Editor.Shared.Assets.AssetPostprocessorProxy:OnPostprocessAllAssets (string[],string[],string[],string[],bool) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/AssetPostprocessorProxy.Gen.cs:24) UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets (string[],string[],string[],string[],string[],bool) 'Meta.XR.MultiplayerBlocks.Shared.IAvatarBehaviour' is missing the class attribute 'ExtensionOfNativeClass'! UnityEditor.AssetDatabase:LoadAssetAtPath<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition> (string) Unity.Services.Deployment.Editor.Shared.Assets.ObservableAssets`1<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition>:AllAssetsPostprocessed (object,Unity.Services.Deployment.Editor.Shared.Assets.PostProcessEventArgs) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/ObservableAssets.Gen.cs:66) Unity.Services.Deployment.Editor.Shared.Assets.AssetPostprocessorProxy:OnPostprocessAllAssets (string[],string[],string[],string[],bool) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/AssetPostprocessorProxy.Gen.cs:24) UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets (string[],string[],string[],string[],string[],bool) GameObject (named 'AvatarNGOSdk28Plus') references runtime script in scene file. Fixing! UnityEditor.AssetDatabase:LoadAssetAtPath<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition> (string) Unity.Services.Deployment.Editor.Shared.Assets.ObservableAssets`1<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition>:AllAssetsPostprocessed (object,Unity.Services.Deployment.Editor.Shared.Assets.PostProcessEventArgs) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/ObservableAssets.Gen.cs:66) Unity.Services.Deployment.Editor.Shared.Assets.AssetPostprocessorProxy:OnPostprocessAllAssets (string[],string[],string[],string[],bool) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/AssetPostprocessorProxy.Gen.cs:24) UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets (string[],string[],string[],string[],string[],bool) 'Meta.XR.MultiplayerBlocks.Shared.IAvatarBehaviour' is missing the class attribute 'ExtensionOfNativeClass'! UnityEditor.AssetDatabase:LoadAssetAtPath<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition> (string) Unity.Services.Deployment.Editor.Shared.Assets.ObservableAssets`1<Unity.Services.Deployment.Editor.DeploymentDefinitions.DeploymentDefinition>:AllAssetsPostprocessed (object,Unity.Services.Deployment.Editor.Shared.Assets.PostProcessEventArgs) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/ObservableAssets.Gen.cs:66) Unity.Services.Deployment.Editor.Shared.Assets.AssetPostprocessorProxy:OnPostprocessAllAssets (string[],string[],string[],string[],bool) (at ./Library/PackageCache/com.unity.services.deployment/Editor/Shared/Assets/AssetPostprocessorProxy.Gen.cs:24) UnityEditor.AssetPostprocessingInternal:PostprocessAllAssets (string[],string[],string[],string[],string[],bool)Solved1.8KViews0likes7CommentsFailed to poll initial positon, no head position found
Hello, I created a blank project in Unity 6000.0.37f1 and dowloaded the latest version of Meta All in One (v72) and Meta Avatars(v33). i just created a blank scene and added all the building blocks necessary for tests the new avatars (camera rig, virtual hands, passthrough, auto matchmaking and avatars). the project is correctly connected to an app on the store and the avatar spawn correctly, but after the spawn i got this two error: -[ovrAvatar2] OvrAvatarBodyTrackingMode.Standalone is deprecated, please use OvrAvatarBodyTrackingMode.None instead and set the InputTrackingProvider, InputControlProvider, and HandTrackingProvider properties of the OvrAvatarInputManagerBehavior MonoBehavior on the OvrAvatarEntity prefab/instance. this one as the debug say i just changed the tracking in None and it look fixed. -Failed to poll initial positon, no head position found UnityEngine.Debug:LogError (object) Oculus.Avatar2.MecanimLegsAnimationController:PollInitialPosition () (at Assets/Samples/Meta Avatars SDK/33.0.0/Sample Scenes/Scripts/LegsNetworkLoopback/MecanimLegsAnimationController.cs:624) Oculus.Avatar2.MecanimLegsAnimationController:UpdateState () (at Assets/Samples/Meta Avatars SDK/33.0.0/Sample Scenes/Scripts/LegsNetworkLoopback/MecanimLegsAnimationController.cs:280) Oculus.Avatar2.MecanimLegsAnimationController:Update () (at Assets/Samples/Meta Avatars SDK/33.0.0/Sample Scenes/Scripts/LegsNetworkLoopback/MecanimLegsAnimationController.cs:238) i lost two days for understand what is happening but still i didn't understand the problem. can you guys help me?Solved1.7KViews3likes7CommentsCannot set Meta Quest Link as active OpenXR runtime normally
Hello! We are developing a PC-VR app in Unity with Meta Quest 3 at our company. We use OpenXR plugin to build the code around OpenXR standard in order to support more platforms in the future. However, the button to set the meta quest link as active runtime for open xr never works on our test PCs. We've tested multiple laptops & PCs in the companies and none of them seem to be work without us manually setting the path in the registry. We've tried starting the Link app as an admin, installed it as an admin etc. One time the registry entry doesn't even get added automatically after installing Meta Quest Link App and we had to install "OpenXR for Windows Mixed Reality" to create it without writing a script to automatically create the group entry ("HKLM\Software\Khronos\OpenXR\1") in the registry. Could anyone help clarify what is up with this case and how we can resolve it? Otherwise the setup process is basically impossible for our potential customers without in-depth technical support... Thank you! References: https://community.khronos.org/t/openxr-directory-not-existing/1111841.1KViews2likes7CommentsSystem Menu appears on finger pinch – how to disable it?
Hi everyone, I’m developing a standalone VR app for Meta Quest 3 that uses hand tracking (no controllers). However, when users pinch their thumb and index finger, the System Menu unexpectedly appears — interrupting the experience. This seems to be the default system gesture for opening the Meta Menu in hand-tracking mode. For a VR application, this causes a very uncomfortable and distracting experience for users — especially when they accidentally trigger the system UI during normal interaction. I’d like to ask: 1. Is there any official way or API to disable or suppress the system menu gestures (like the pinch or palm-up menu)? 2. Can this be done at runtime through Unity / OpenXR / Meta SDK settings? 3. If not, are there enterprise or MDM settings (e.g., ManageXR, ArborXR, etc.) that allow disabling these gestures? Any confirmed solution or workaround would be greatly appreciated — even a partial one (for example, disabling only the pinch gesture while keeping hand input active). Thanks in advance! NaetibSolved961Views1like17CommentsUnity Compile Error: WindowsXRSimInstallationDetector not found
Hi there, I'm running into an interesting issue on Unity 6.3, using the 83 SDKs. I have installed the simulator, however in my Unity project I get compile errors (and subsequently can't use the simulator) as it seems the script doesn't compile correctly. The following is the error: Library\PackageCache\com.meta.xr.sdk.core@06273138c40d\Editor\MetaXRSimulator\XRSimInstallationDetector.cs(87,29): error CS0246: The type or namespace name 'WindowsXRSimInstallationDetector' could not be found (are you missing a using directive or an assembly reference?) I've tried regenerating project files, reimporting assets and deleting the library folder, everything to no avail. Would be great to get some help regarding this!814Views5likes10CommentsIssues with Gaussian Splatting integration in Meta Spatial SDK (v0.9.2) – Standalone Quest 3
Hi everyone, I am an architect and urban planner, developing VR/MR projects in my spare time. I’m currently working on a native Quest 3 application to view Gaussian Splats for highly detailed virtual project tours. My Goal: Render native Gaussian Splatting (3DGS) on Quest 3 (Standalone). Synchronize the splat position with the real world for a seamless transition from Mixed Reality (MR) to Virtual Reality (VR) with a skybox. Targeting a minimum of 150k splats with stable performance. Previous Attempts: I initially used Unity with the Aras/Ninja implementations. While it works perfectly via Oculus Link (PCVR), it’s not viable for my needs because: PC Builds don't support the specific MR features I need for this project. The Android build (standalone) performance is extremely poor, even with optimized settings and a small 50k splat PLY file (unusable frame rates). Current Issue with Meta Spatial SDK: I’ve switched to the Meta Spatial SDK (Packages v0.9.2) to leverage the new native splat support mentioned here: Spatial SDK Splats Documentation. Despite following the documentation step-by-step: The splats do not appear in the scene. I am getting several reference errors (MissingReference/NullReference) that I can't seem to resolve. My Question: Has anyone successfully created a native Quest 3 APK using the Spatial SDK to run Gaussian Splats (~150k splats)? If so, could you share the correct workflow or point out common pitfalls with this specific SDK version? Any help or documentation beyond the official guide would be greatly appreciated!800Views2likes13CommentsUnwanted AndroidManifest Permissions Programmatically Added By Unity During APK Build Process
Any updated methods to remove the permissions automatically added by Unity (which are unneeded by my app)? Talking about this issue in particular: https://communityforums.atmeta.com/t5/Unity-Development/Your-manifest-includes-the-following-permissions-restricted-by/m-p/960334#M20612 Here's another "magical" way to fix it: https://skarredghost.com/2021/03/24/unity-unwanted-audio-permissions-app-lab/Solved799Views0likes3CommentsMeta XR Simulator 81.0 is not detected by Unity 6.2
I tried to install Meta XR Simulator as part of Meta All-in-One Package and with Meta Core SDK + Meta XR Simulator standalone setup, all components versioned 81.0 when I'm trying to enable Meta XR Simulator via any of menus where I could do it, I see the same log error every time: [Meta XR Simulator Installer] finished downloading https://securecdn.oculus.com/binaries-download-auth/?id=32431411879837787 [Meta XR Simulator Installer] HTTP/1.1 404 Not Found [Meta XR Simulator Not Installed] Installation failed, please report the issue on the bug tracker. [Meta XR Simulator Not Installed] Try using different version. Open Edit > Preferences... > Meta XR > Meta XR Simulator and choose different selected version. Somehow Unity doesn't detect that Meta XR Simulator is already installed and tried to do it again with an error. My Unity Version: 6000.2.14f1 My OS is Windows 11 Would love to provide any additional information752Views1like5Comments