clGetPlatformIDs() failed by Adreno OpenCL sdk
Hello, I am developing on Meta Quest 3 using Adreno OpenCL SDK for programs running on GPU. However, when I try to run the OpenCL examples on Android Studio, there is an error of function clGetPlatformIDs() with error code -1001, saying that the function cannot find the platform on the device. I have searched this problem online, and linked libOpenCL.so and other related libraries to the source, but the problem still exists. How should I solve this problem? Thanks. Adreno OpenCL SDK v2.0: https://developer.qualcomm.com/software/adreno-gpu-sdk/tools900Views0likes1CommentRandom spike in CPU usage and longer render times
Hello, I am a developer on a Unity app for Quest 2. We have a performance problem with our app that causes huge spikes in CPU usage. The app performs well and as we want it to at first, seen here captured by OVR metrics: All of the systems in the app test well and do not cause problems but after a certain amount of time doing various things, a user has a random random chance of having the framerate plummet. In this next picture, I experienced the bug and then returned to the login screen where the bug persisted: You can see that CPU usage has skyrocketed to a locked 100%. You would think that there is some process taking up frame time in the background. I took a look at the profiler on a build to see if there was a key culprit. Here is a frame under good conditions where performance is as expected: And after the bug, the frame looks like this: You can see that the player loop has almost doubled in duration, but the scripts portion of the frame is actually pretty much the same. The change is entirely in EarlyUpdate.XRUpdate and PostLateUpdate.FinishFrameRendering taking 5x as long as before. So why am I getting a huge CPU usage spike while also the rendering of the same workload is suddenly taking so much longer?? Is there any chance that the quest is downclocking under stress? Once this happens, there is no way to retrieve the old performance until you restart the app completely. There is no surefire way to trigger this to happen, it just randomly takes place when there's a decent amount going on and then stays forever. I do not understand what APP T and TW T mean in the OVR metrics panel as well, if those might lead to a culprit. Any ideas would be much appreciated, thank you.1KViews0likes0CommentsUncertain Graphics Card Compatibility
Just upgraded from an old sluggish laptop with a Intel UHD Graphics 620 graphics card to a i7 Dell Laptop, purely with the intention to get a much better gaming experience in VR. But, only to discover that the Nvidia Quadro T2000 GPU, is not compatible with the air link. With it working on my last I assumed it would work with this. I've seen suggestions that Quadro T2000 isn't a high enough spec, but how is true if it can run on other lower spec GPU's and other Nvidia GPU similar to the T2000? Meta only state a hand full of compatible GPU's on their website, making it impossible to know what other GPU's are compatible. This is meant to be a user-friendly experience for almost everyone, I shouldn't be gambling on whether I can connect to airlink.665Views0likes0CommentsApp frame rate drop when increasing devices refresh rate
Hello So I'm noticing some frame and GPU utilisation increases when I change the refresh rate of the Quest 2 I'm using the latest OVRMetrics to view the numbers App build with Unity 2019.4.34 Changing refresh rate using SideQuest The app is a steady 72 when at 72hz GPU hovering around 85 If I change the refresh rate to 90hz the app hovers around 74-76fps but GPU goes up to 96 Going to 120hz pushes the GPU up to 99 and drops the app frame rate to 69-70fps Is this to be expected? Or maybe its a bug with the OS (version 39.0.0.86.336) I don't need the app running more than 72fps but even if I set the OVRManager.display.displayFrequency in Unity, the OS appears to override it when I change the refresh rate862Views0likes0CommentsGPU Compatibility
Hello I have an MSI GP72VR 7RF LEOPARD pro laptop, having all the capacities required for the use of the oculus link ( for Oculus Quest 2 ), except the graphics card which is a 1060 3go, my question is: is it impossible for me to connect an oculus link? Is it just a loss of performance? my pc cost 1500 euro 2 years ago i find it strange that it can't work Especially the main selling point of this pc is the "VR READY" feature thank you...632Views0likes1CommentGPU Profiler Issue
Hi, I am an Oculus Quest Unity developer. I have tried to Debug my Quest application by Unity Rendering Profiler window, However, doing so arouse performance issue: the FPS drops from 72FPS to 20 FPS. May I ask why? By the way, I have also used SnapDragon profiler for specifically profiler GPU performance of the application, but the images cannot be captured. Any solutions would be highly appreciated!632Views0likes0CommentsUnity DrawMeshInstanced not working on Quest
For some reason DrawMeshInstanced doesn't work for me on Quest. I tried both Graphics.DrawMeshInstanced and CommandBuffer.DrawMeshInstanced and they both don't work. DrawMesh does work with no problem. DrawMeshInstanced works on PC running in the Editor or in a build on Rift. The shader that I'm using is placed in a resources folder so it should be included in the build, but to make sure I also tried placing it in the mush include shaders list and even to place an object in the scene with a material that uses it. All of this didn't help. I also checked the SystemInfo.supportsInstancing and it returns true on the Quest. Here is the shader that I'm using: Shader "Unlit_Mesh_Instance" { Properties { _Color ("Color", Color) = (1,1,1,1) } SubShader { Tags { "Queue"="Overlay" "RenderType"="Opaque" } Pass { Name "FORWARD" Tags { "LightMode"="ForwardBase" } Blend SrcAlpha OneMinusSrcAlpha ZTest Always //Offset -100, -100 Cull Off CGPROGRAM #pragma vertex vert #pragma fragment frag //#define UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #include "AutoLight.cginc" #pragma multi_compile_fwdbase #pragma multi_compile_instancing #pragma only_renderers d3d9 d3d11 glcore gles gles3 metal #pragma target 3.0 UNITY_INSTANCING_BUFFER_START(Props) UNITY_DEFINE_INSTANCED_PROP(float4, _Color) UNITY_INSTANCING_BUFFER_END(Props) struct VertexInput { float4 vertex : POSITION; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct VertexOutput { float4 pos : SV_POSITION; UNITY_VERTEX_INPUT_INSTANCE_ID UNITY_VERTEX_OUTPUT_STEREO }; VertexOutput vert (VertexInput v) { VertexOutput o = (VertexOutput)0; UNITY_SETUP_INSTANCE_ID(v); UNITY_TRANSFER_INSTANCE_ID(v, o); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); o.pos = UnityObjectToClipPos(v.vertex); return o; } float4 frag(VertexOutput i) : COLOR { UNITY_SETUP_INSTANCE_ID(i); UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(i); return UNITY_ACCESS_INSTANCED_PROP(Props, _Color); } ENDCG } } } Am I missing something here?2.1KViews0likes1Comment