diff options
| author | 2021-02-17 00:59:28 -0300 | |
|---|---|---|
| committer | 2021-07-22 21:51:22 -0400 | |
| commit | 85cce78583bc2232428a8fb39e43182877c8d5ad (patch) | |
| tree | 308f4ef2d145652e08dff1da31c72c2f00dad2e1 /src/shader_recompiler/backend/spirv/emit_context.cpp | |
| parent | shader: Remove old shader management (diff) | |
| download | yuzu-85cce78583bc2232428a8fb39e43182877c8d5ad.tar.gz yuzu-85cce78583bc2232428a8fb39e43182877c8d5ad.tar.xz yuzu-85cce78583bc2232428a8fb39e43182877c8d5ad.zip | |
shader: Primitive Vulkan integration
Diffstat (limited to 'src/shader_recompiler/backend/spirv/emit_context.cpp')
| -rw-r--r-- | src/shader_recompiler/backend/spirv/emit_context.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_context.cpp b/src/shader_recompiler/backend/spirv/emit_context.cpp index 1c985aff8..770067d98 100644 --- a/src/shader_recompiler/backend/spirv/emit_context.cpp +++ b/src/shader_recompiler/backend/spirv/emit_context.cpp | |||
| @@ -115,6 +115,7 @@ void EmitContext::DefineConstantBuffers(const Info& info) { | |||
| 115 | for (const Info::ConstantBufferDescriptor& desc : info.constant_buffer_descriptors) { | 115 | for (const Info::ConstantBufferDescriptor& desc : info.constant_buffer_descriptors) { |
| 116 | const Id id{AddGlobalVariable(uniform_type, spv::StorageClass::Uniform)}; | 116 | const Id id{AddGlobalVariable(uniform_type, spv::StorageClass::Uniform)}; |
| 117 | Decorate(id, spv::Decoration::Binding, binding); | 117 | Decorate(id, spv::Decoration::Binding, binding); |
| 118 | Decorate(id, spv::Decoration::DescriptorSet, 0U); | ||
| 118 | Name(id, fmt::format("c{}", desc.index)); | 119 | Name(id, fmt::format("c{}", desc.index)); |
| 119 | std::fill_n(cbufs.data() + desc.index, desc.count, id); | 120 | std::fill_n(cbufs.data() + desc.index, desc.count, id); |
| 120 | binding += desc.count; | 121 | binding += desc.count; |
| @@ -143,6 +144,7 @@ void EmitContext::DefineStorageBuffers(const Info& info) { | |||
| 143 | for (const Info::StorageBufferDescriptor& desc : info.storage_buffers_descriptors) { | 144 | for (const Info::StorageBufferDescriptor& desc : info.storage_buffers_descriptors) { |
| 144 | const Id id{AddGlobalVariable(storage_type, spv::StorageClass::StorageBuffer)}; | 145 | const Id id{AddGlobalVariable(storage_type, spv::StorageClass::StorageBuffer)}; |
| 145 | Decorate(id, spv::Decoration::Binding, binding); | 146 | Decorate(id, spv::Decoration::Binding, binding); |
| 147 | Decorate(id, spv::Decoration::DescriptorSet, 0U); | ||
| 146 | Name(id, fmt::format("ssbo{}", binding)); | 148 | Name(id, fmt::format("ssbo{}", binding)); |
| 147 | std::fill_n(ssbos.data() + binding, desc.count, id); | 149 | std::fill_n(ssbos.data() + binding, desc.count, id); |
| 148 | binding += desc.count; | 150 | binding += desc.count; |