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

Add ability to foveate a render target #310

Open
cabanier opened this issue Feb 2, 2025 · 1 comment
Open

Add ability to foveate a render target #310

cabanier opened this issue Feb 2, 2025 · 1 comment
Labels

Comments

@cabanier
Copy link
Member

cabanier commented Feb 2, 2025

three.js is moving to a 2 (or more) pass solution.
This creates a problem for foveation since it's only applied to the textures of the swapchain. If we want to preserve foveation, we'd have to first render to the swapchain texture, then copy it to a regular one and then apply the second pass.

I propose that we add a new API to XRWebGLBinding to apply foveation to the current bound target. That way, the first render pass can render to that target and the next one can draw to the swapchain texture.

Proposed new API:
void foveateBoundTexture(GLenum target, float fixed_foveation)

/agenda Add ability to foveate a render target

@cabanier
Copy link
Member Author

cabanier commented Feb 4, 2025

cc @AdaRoseCannon @zachernuk @toji to investigate if this approach will work on their XR systems.

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

No branches or pull requests

2 participants