Quest Runtime Optimizer fails to analyze captured frame
I am trying to use the Quest Runtime Optimizer (v0.1.0 from the asset store) on an OpenXR project with Unity 2022.3.54f1. I am building and deploying an apk to a Meta Quest 3 (version 79.0). The Scan GameObjects functionnality works fine. However, when I try to "Capture Frame" from the Quest Runtime Optimizer editor windows, I get the following error: MetricAPI: 68946B12.json execode: 0 single positional indexer is out-of-bounds Traceback (most recent call last): File "C:\open\fbsource\arvr\projects\integrations\Unity\RuntimeOptimizer\Editor\PerformanceInsight\MetricAPI.py", line 1118, in main File "pandas\core\indexing.py", line 1191, in __getitem__ File "pandas\core\indexing.py", line 1752, in _getitem_axis File "pandas\core\indexing.py", line 1685, in _validate_integer IndexError: single positional indexer is out-of-bounds UnityEngine.Debug:LogError (object) Meta.XR.RuntimeOptimizer.Core.Util:DebugLogError (object) (at ./Library/PackageCache/com.meta.xr.runtimeoptimizer@0.1.0/Core/LogUtils.cs:19) Meta.XR.RuntimeOptimizer.Editor.PerformanceInsight.MetricAPI:GetCaptureMetric (string,string) (at ./Library/PackageCache/com.meta.xr.runtimeoptimizer@0.1.0/Editor/PerformanceInsight/MetricAPI.cs:68) Meta.XR.RuntimeOptimizer.Editor.PerformanceInsight.CaptureTool:ProcessCaptureToJsonObjFunc (object) (at ./Library/PackageCache/com.meta.xr.runtimeoptimizer@0.1.0/Editor/PerformanceInsight/CaptureTool.cs:787) System.Threading._ThreadPoolWaitCallback:PerformWaitCallback () The captured frame appears in the Quest Runtime Optimizer editor windows but when I click on it, I get a second error: Failed to generate perfetto Analysis for 68946B12 UnityEngine.Debug:LogError (object) Meta.XR.RuntimeOptimizer.Core.Util:DebugLogError (object) (at ./Library/PackageCache/com.meta.xr.runtimeoptimizer@0.1.0/Core/LogUtils.cs:19) Meta.XR.RuntimeOptimizer.Editor.RuntimeOptimizerWindow:OnGUI () (at ./Library/PackageCache/com.meta.xr.runtimeoptimizer@0.1.0/Editor/RuntimeOptimizer.cs:2205) UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) Any help would be appreciated.132Views1like3CommentsMeta Quest Runtime Optimizer issues
I tried the Meta Quest Runtime Optimizer utility and was inspired by the idea of integrating such useful functionality into Unity. On a simple test scene in my project everything worked well, but on a real complex scene I encountered several problems: 1) When I tried to capture a frame, the console displayed a warning [OVRNetworkTcpClient] Sanity check failed. PayloadLength 333694 and the frame capture has not happened. I tried deleting large parts of the scene (especially rigid body objects) and the frames were captured correctly, but it didn't help much. What could be the root cause? 2) "What if?" Analysis gives ьу confusing results: some objects report negative render time. Is it normal behavior and can I just ignore those reports?270Views2likes7CommentsOptimizing avatar instantiation. High cost of creating & uploading textures to GPU.
Hello, I am trying to optimize instantiating avatars at runtime using Unity 2021.3.5f1. I am using the GPU Skinning for improved runtime performance. When I create a new avatar currently, there is a few frames where the frame time spikes while textures are created. There are 3 textures created over 3 frames. The three functions that run are: OvrAvatarGpuSkinnedPrimitive.CreateMorphTargetSourceTex OvrAvatarGpuSkinnedPrimitive.CreateJointsTex OvrAvatarGpuSkinnedPrimitive.CreateNeutralPoseTex I have tried reducing the texture precision to reduce memory created but this has little affect. I also looked into pooling the textures but their dimensions are based entirely on the specific avatar being loaded so this was not possible since I do not know the avatars ahead of time. Does anyone have any insights or tips on how I can reduce or mitigate this cost? Thank you858Views0likes0CommentsCan GPU instanced meshes be skinned on Android?
I'm currently researching the capabilities of a Gear VR game built in Unity. A big question is if I can do a big RTS-like scene within the draw call budget. From what I've gathered, the way to do this is using Graphics.DrawMeshInstancedIndirect, which allows GPU instanced meshes to also be skinned. However, what little info I found with regards to Android indicate that this is either unsupported or buggy. Can anyone knowledgeable with Unity and this feature shed some light on this?835Views0likes1CommentWhen making a huge game, what are some VR Optimization techniques?
Here's a breakdown of my game. tons of characters, tons of textures, terrains, grass, cars, traffic system, effects and fire. background(low res) as well as higher resolution interactive characters. Many environments but broken up in small little scenes. . Will use various products with scripting from the Unity Asset store. Some particle effects, some water textures, . Lot of animations for characters. LIke i said lots of characters maybe even 100 but not all at the same scene at the same time. There's a product in the asset store for weather system and day night cycle. i will use that. there's a product for ppopulation walking in street lots of people but i believe they are low res. bookstores, libraries, parks, forests. , shopping malls. Anyways, it's huge plus have many sounds and sound effects. What kind of things should i do to optimize the game. Whihc will be played only for myself on a Win 10 machine 32GB RAM i7, . and i'm using DAZ Characters which i will decimate.772Views0likes1Comment