immersive-web / webxr

Repository for the WebXR Device API Specification.
https://immersive-web.github.io/webxr/
Other
3k stars 386 forks source link

Are FFR (Fixed Foveation Rendering) and MultView extensions incompatible? #1371

Closed emadurandal closed 1 month ago

emadurandal commented 5 months ago

(I am not sure if this is the right place to ask this question, but if you know of a better place, please let me know.)

I am working on improving the performance of WebXR in my Web3D library and have recently added support for the MultiView extension (oculus_multiview/OVR_multiview2).

To further improve it, I am also planning to use FFR (Fixed Foveation Rendering), but I found a curious description on the following oculus developer website: https://developer.oculus.com/documentation/web/webxr-ffr/#why-it-might-not-be-working

Rendering the scene to an intermediate buffer and then post-processing that into the final frame. FFR only applies when rendering to the final frame buffer, so if you’re rendering to an intermediate buffer, you won’t see a meaningful performance improvement.

The MultiView extension requires the scene to be drawn to a texture array rather than to the HMD's framebuffer. Would this conflict with this constraint?

Are FFR and MultiView incompatible?

cabanier commented 1 month ago

No, when you use multiview, you should use webxr layers because it allows you to render directly to a texture array (which is required for multiview). See https://immersive-web.github.io/webxr-samples/layers-samples/proj-multiview.html for an example