Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance issue (HP Reverb G2 and Mixed Reality Portal) #294

Open
luuktito opened this issue Jul 12, 2023 · 3 comments
Open

Performance issue (HP Reverb G2 and Mixed Reality Portal) #294

luuktito opened this issue Jul 12, 2023 · 3 comments

Comments

@luuktito
Copy link

Good day, I'm currently experiencing a weird issue with the sample/demo scene, when using the HP Reverb G2.
When I enter the VR mode, the Mixed Reality Portal will be launched in order to run the WebXR view.
This is all fine and behaves as expected, the fps will start at 90 fps which is again correct for the refresh rate of this headset.

The issue is that after a few seconds the fps will suddenly drop, it will then fluctuate between 30-70 fps, and never reach 90 again.
So far I've been able to replicate this issue in both Chrome and Edge, on multiple systems (RTX 2070 and RTX 2060).
This happens both with the demo that's hosted on github and with a custom build that's hosted locally (built using Unity 2021.3.18f1 and WebXR package version 0.17.0)

Running the sample scene in the Unity editor (which falls back to the OpenXR api of course), does run flawlessly at 90 fps in the Mixed Reality Portal, without starting to drop frames.

I've tried other WebGL/WebXR demo's, like the ones found here:
(https://immersive-web.github.io/webxr-samples/)
These all seem to work fine and will stay stable at 90 fps, so I don't think this is necessarily an issue with running the WebGL/WebXR api in the Mixed Reality Portal.

@De-Panther
Copy link
Owner

I don't have this device for tests.
I have Quest 1 and I'm using it with Link, and it doesn't drop frames.
Can you run the Chrome DevTools performance tab and see what takes all the resources?
You can follow this: https://medium.com/@depanther/unity-webgl-secrets-b6ddf214f1fd
try to use the --profiling-funcs to run the scene

@luuktito
Copy link
Author

Weirdly it seems like the actual frame times aren't bad, only 3ms or so. There's just a lot of weird downtime and inconsistency between frames.

Here's an image of the chrome performance profiler (the framerate here was around 55, instead of the target of 90):
image

I also attached the associated trace file, I guess github doesn't like .json files so I renamed it to a .txt file:
Trace-20230713T120348.txt

Also I don't know if this is useful but I also attached the Unity profiler which gave me these results:
image

I've tried running the live demo through SteamVR in Mixed Reality Portal, but ultimately it's just a wrapper, and Mixed Reality Portal is still used to run everything, so the issue still persists.

I also tried the live demo on a different system (RTX 3080 with Valve Index and native SteamVR) and that worked fine.
With how janky and broken the Mixed Reality Portal is sometimes it wouldn't surprise me if the issue lies there somewhere.

@De-Panther
Copy link
Owner

I don't have much info in your screenshots. What version of Chrome are you using?
image
Seems like the Unity frame operations are taking a very short time, as they should. I can't figure out from your screenshot how much time is between frames in your screenshot.

Also, maybe on one machine other stuff was running on background? Even on other tabs. So when you switched to another machine, it's not the graphics card that fixed the issue, but the processes that you run on background.
Maybe a WMR preview window was open? Maybe there was no focus on the browser tab?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants