Oculus Quest browser dev tips

My new glasses have arrived & I can now better operate the device, so I am going to start taking a scene I am working on and add things one at a time. Not really interested in re-inventing the wheel.

Has anyone seen a forum or other info / recommendations for developing with the oculus browser? Specifically, is there some sort of frame rate monitoring or console log facility? If not, I can rig some small full screen GUI to display me the rate & have a temporary button to exit right? My ultimate goal is to deploy in BJS Native, but not a good place to start.

Also, has anyone turned on the experimental 90 hz refresh rate yet? Thinking it might be useful as things are added to observing any rate drops, being more constraining / sensitive. It’s going to be production eventually, so unless there is a reason not to use it yet, might as well do it in dev.

Almost an side, but I needed some colored lights to be seen from above, but the emissive PBR material looked washed out, so I added 3 lines & changed an if test of the Blender exporter. Now have a check box property ‘Override as STD Material’.

It fixed the problem, but now I am thinking if an emissive STD material is much faster than a PBR Material, I might use it anywhere a PBR material is not beneficial, like metalic, shiny, or has an alpha texture. Most scenes are going to bottle neck in the js thread, but I have some very plain walls, where the fragment shader is going to run a high % of the number of pixels. Thinking the 90hz constraint might be helpful in confirming my hypothesis.

Anything / place people found useful.

Hey, glad to see one more XR dev out there :slight_smile:

The oculus browser is chrome in disguise. It can be debugged using remote debugging session from your desktop. For that you will need to enable the developer mode on your oculus - Device Setup | Oculus Developers

What I find especially helpful is the OVR metrics tool - OVR Metrics Tool | Developer Center | Oculus , this will show you the current CPU/GPU load and native FPS in the device itself. Wonderful for development.

And also I would recommend sidequest, as it has the most stable driver and ADB connection for remote debugging. My workflow always starts with sidequest -> edge chromium -> debugging.

3 Likes

Thanks @RaananW for those tips, exploring more on XR , tomorrow my Oculus 2 device will arrive, hopefully will be easy to port stuff I built with babylon, please throw if you have more suggestions for setup, usage etc :upside_down_face:

edit: I also found that not all browsers on my Mac supports webXR, which version is compatible? I downloaded chrome canary latest version Version 89.0.4364.0 (Official Build) canary (x86_64), but it doesn’t have required flags :confused: , guess I can only play webXR on device only when it arrives tomorrow :expressionless:

2 Likes

If you want to track device compatibility you can try Can I use… Support tables for HTML5, CSS3, etc.

1 Like