GPU: Multiview support - #16350
Draft
ada-tv wants to merge 4 commits into
Draft
GPU: Multiview support#16350ada-tv wants to merge 4 commits into
ada-tv wants to merge 4 commits into
Conversation
eloj
reviewed
Sep 19, 2026
flibitijibibo
self-requested a review
September 20, 2026 01:27
Collaborator
If the XR properties are present we can make multiview mandatory, otherwise we can ignore/skip it. |
Author
For now I'm making it so the max view count is exposed through a device property defaulting to 1, so if an app wants to fall back to another method or quit with an error message it can do so. Some drivers on Linux either don't support multiview or have only started supporting it relatively recently. |
Collaborator
|
Latest version of the support query bits lgtm. Once the spinning cube example is updated I'll test on-device ASAP. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Allows drawing to multiple slices of array textures with a single render pass, handy for single-pass stereo, cubemaps, and shadow cascades.
I don't actually have any experience using multiview in practice, I was hoping to learn it using the SDL RHI lol
Any pointers from senior devs with more experience are appreciated
testgpu_spinning_cube_xrAPI stuff
ShouldAssuming view count is the common denominator, going with thatBeginMultiViewGPURenderPasstake an integer view count (Metal) or a bitmask (Vulkan and D3D)?BeginMultiViewGPURenderPasswhen only given one viewJust render to the first array slice?
Backends
ShouldKHR_multiviewbe enabled by default or should we require it to be enabled manually through a property?Will expose real max view count if multiview is available, falls back to 1 if not
Existing Issue(s)
Closes #16215