diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2021-04-22 16:17:59 -0300 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-07-22 21:51:28 -0400 |
commit | d10cf55353175b13bed4cf18791e080ecb7fd95b (patch) | |
tree | 9e26b823d7b48f532914a0511a157c14806debf5 /src/shader_recompiler/backend/spirv/emit_context.h | |
parent | 7a9dc7839876fe5b24d1c841f182e01108ba676e (diff) |
shader: Implement indexed textures
Diffstat (limited to 'src/shader_recompiler/backend/spirv/emit_context.h')
-rw-r--r-- | src/shader_recompiler/backend/spirv/emit_context.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_context.h b/src/shader_recompiler/backend/spirv/emit_context.h index a4503c7ab7..c52544fb7b 100644 --- a/src/shader_recompiler/backend/spirv/emit_context.h +++ b/src/shader_recompiler/backend/spirv/emit_context.h @@ -32,17 +32,26 @@ private: struct TextureDefinition { Id id; Id sampled_type; + Id pointer_type; Id image_type; + u32 count; +}; + +struct TextureBufferDefinition { + Id id; + u32 count; }; struct ImageBufferDefinition { Id id; Id image_type; + u32 count; }; struct ImageDefinition { Id id; Id image_type; + u32 count; }; struct UniformDefinitions { @@ -162,7 +171,7 @@ public: std::array<UniformDefinitions, Info::MAX_CBUFS> cbufs{}; std::array<StorageDefinitions, Info::MAX_SSBOS> ssbos{}; - std::vector<Id> texture_buffers; + std::vector<TextureBufferDefinition> texture_buffers; std::vector<ImageBufferDefinition> image_buffers; std::vector<TextureDefinition> textures; std::vector<ImageDefinition> images; |