[SPIR-V] Add sampler & resource heaps for textures#8281
Merged
Keenuts merged 7 commits intomicrosoft:mainfrom Mar 30, 2026
Merged
[SPIR-V] Add sampler & resource heaps for textures#8281Keenuts merged 7 commits intomicrosoft:mainfrom
Keenuts merged 7 commits intomicrosoft:mainfrom
Conversation
Collaborator
Author
|
CI failure is because of SPV tools update, requires #8278 |
Resource & Sampler heaps are already implemented in DXC, but rely on an emulated heap. A new VK/SPV extension bring actual descriptor heaps. This is the first step toward a complete support. This commits focuses on Texture/Sampler/Buffer resources, which are all backed by OpTypeImage/OpTypeSampler. This path is a bit simpler as we have no ArrayStride, nor OpAccessChain legalization issues: the whole image handle loading is handled in DXC, and the rest follows the normal path. Next step is to implement RWStructuredBuffer/StructuredBuffer support, with counters and chain legalization. Related to microsoft#8243
068045c to
02fd8e2
Compare
Collaborator
Author
|
Rebased on main now that SPV-tools fixes are merged. |
s-perron
reviewed
Mar 24, 2026
Collaborator
s-perron
left a comment
There was a problem hiding this comment.
Can you move the parts of the code that are not used (and therefore not tested) in this PR to the one where it is used?
I have a couple other ideas, but in general this is in good shape.
s-perron
reviewed
Mar 24, 2026
s-perron
reviewed
Mar 25, 2026
Contributor
|
✅ With the latest revision this PR passed the C/C++ code formatter. |
s-perron
approved these changes
Mar 25, 2026
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.
Resource & Sampler heaps are already implemented in DXC, but rely on an emulated heap. A new VK/SPV extension bring actual descriptor heaps. This is the first step toward a complete support.
This commits focuses on Texture/Sampler/Buffer resources, which are all backed by OpTypeImage/OpTypeSampler. This path is a bit simpler as we have no ArrayStride, nor OpAccessChain legalization issues: the whole image handle loading is handled in DXC, and the rest follows the normal path.
Next step is to implement RWStructuredBuffer/StructuredBuffer support, with counters and chain legalization.
Related to #8243