summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_context.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/shader_recompiler/backend/spirv/emit_context.h')
-rw-r--r--src/shader_recompiler/backend/spirv/emit_context.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_context.h b/src/shader_recompiler/backend/spirv/emit_context.h
index 1f0d8be77..0da14d5f8 100644
--- a/src/shader_recompiler/backend/spirv/emit_context.h
+++ b/src/shader_recompiler/backend/spirv/emit_context.h
@@ -35,6 +35,11 @@ struct TextureDefinition {
35 Id image_type; 35 Id image_type;
36}; 36};
37 37
38struct ImageBufferDefinition {
39 Id id;
40 Id image_type;
41};
42
38struct ImageDefinition { 43struct ImageDefinition {
39 Id id; 44 Id id;
40 Id image_type; 45 Id image_type;
@@ -136,6 +141,7 @@ public:
136 std::array<UniformDefinitions, Info::MAX_CBUFS> cbufs{}; 141 std::array<UniformDefinitions, Info::MAX_CBUFS> cbufs{};
137 std::array<StorageDefinitions, Info::MAX_SSBOS> ssbos{}; 142 std::array<StorageDefinitions, Info::MAX_SSBOS> ssbos{};
138 std::vector<Id> texture_buffers; 143 std::vector<Id> texture_buffers;
144 std::vector<ImageBufferDefinition> image_buffers;
139 std::vector<TextureDefinition> textures; 145 std::vector<TextureDefinition> textures;
140 std::vector<ImageDefinition> images; 146 std::vector<ImageDefinition> images;
141 147
@@ -213,6 +219,7 @@ private:
213 void DefineConstantBuffers(const Info& info, u32& binding); 219 void DefineConstantBuffers(const Info& info, u32& binding);
214 void DefineStorageBuffers(const Info& info, u32& binding); 220 void DefineStorageBuffers(const Info& info, u32& binding);
215 void DefineTextureBuffers(const Info& info, u32& binding); 221 void DefineTextureBuffers(const Info& info, u32& binding);
222 void DefineImageBuffers(const Info& info, u32& binding);
216 void DefineTextures(const Info& info, u32& binding); 223 void DefineTextures(const Info& info, u32& binding);
217 void DefineImages(const Info& info, u32& binding); 224 void DefineImages(const Info& info, u32& binding);
218 void DefineAttributeMemAccess(const Info& info); 225 void DefineAttributeMemAccess(const Info& info);