De-Panther / unity-webxr-export

Develop and export WebXR experiences using Unity WebGL
https://de-panther.github.io/unity-webxr-export/
Apache License 2.0
1k stars 106 forks source link

WebXR Export + Unity XR Interaction Toolkit - I can't get more than 45 FPS with oculus quest 3. #357

Closed stinss closed 4 months ago

stinss commented 4 months ago

I'm getting poor web performance with WebXR Export + Unity XR Interaction Toolkit, I've tried with several quest 2 and quest 3, even the panther example itself they show in the video https://de-panther.github.io/unity-webxr-export/XRInteractionToolkitDemo/

In my case, even with the example I can't get over 45 FPS, it improves the FPS a bit by not rendering controllers or hands. But I don't get the performance shown in the video: https://youtu.be/Z8UwhQH417w

I have everything configured following the steps, any idea?

Best.

De-Panther commented 4 months ago

There's URP WebXR_PipelineAsset in the sample. Did you try it?

stinss commented 4 months ago

Yes, I have tried URP and WebXR_PipelineAsset. The problem I get with several Quest 2 and Quest 3, but I also get with the url you uploaded as an example, with your same URL I do not get the performance seen in your video.

image
De-Panther commented 4 months ago

I think the video was captured with a version before we added support for Unity XR SDK. The XR SDK added some performance issues. I'm working on a version that will allow to disable the XR Display subsystem, and allow to render using 2 cameras like in the past. You can use an older version of WebXR Export (before the XR SDk support, and with the Built-in RP for now)

stinss commented 4 months ago

thank you very much for the help, I will try just what you have told me and comment with the test results, thanks!

stinss commented 4 months ago

Indeed, you were right, the problem seems to be URP, when testing with webxrExport 0.19 and interactions 0.19.2 when running on Quest 3 the performance is very good, similar to your last video. Looking forward to the next version, your work is awesome, congratulations and thanks for sharing it with the whole community.

De-Panther commented 4 months ago

Here's the PR for the changes https://github.com/De-Panther/unity-webxr-export/pull/360 I want to create 2 Samples with it (duplications of the URP samples, but using BiRP), and then I'll merge it.

De-Panther commented 4 months ago

Merged the PR. Can you please check the online demos again?

stinss commented 4 months ago

I have tested the online demos and the performance is now really good, reaching 90 FPS on many occasions during interactions with the elements (hand tracking and gamepads). The performance has been similar to the build I compiled with 0.19. Very good job.

De-Panther commented 4 months ago

Thanks for the feedback!