-
Notifications
You must be signed in to change notification settings - Fork 669
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
Feature request, combinedImageSampler for texture arrays #5092
Comments
I don't want to double down on the vk::combinedImageSampler attribute. After updating inline spir-v, I'll see how we can handle this. As I work through the inline spr-v, I'll make one of my goals to be able to define a class that can be made available in a header file that will be a combined image sampler. Then I would to deprecate |
This will stay as long DXC has not implemented the equivalent for bindless combined image samplers. Issue: microsoft/DirectXShaderCompiler#5092
I was a little surprised this doesn't work. I guess it's not trivial. |
We are close to finishing the implementation for The problem with the current design for the vk::combinedImageSampler is that it relies one SPIR-V opt to be able to guess as which textures and samplers should be combined, and there are a lot of corner cases where we cannot get it correct. |
@cassiebeckley Once the |
@s-perron I made this in godbolt https://godbolt.org/z/sxejh1q7W I'll get @Przemog1 to reimplement GLSL-style However I've found a bug in the implementationProp 0011, one can't "nest"
The error I get is that apparently
Should I open a separate issue about that? |
Yes please do that. |
Consider the following GLSL code:
An attempt to translate this into HLSL could look like:
However, DXC does not support declaring combined image sampler arrays like this. I have also compiled the HLSL version with shaderc and it produced a shader that rendered the correct/expected output. That might be non-compliance or a bug on the end of shaderc, but that indicates that it is possible to compile this shader down into an homologous spirv representation as the GLSL version.
Among other things this would make it easier for developers to port existing GLSL codebases targetting vulkan into HLSL.
The text was updated successfully, but these errors were encountered: