diff options
| author | Egor Yusov <egor.yusov@gmail.com> | 2018-05-13 06:23:56 +0000 |
|---|---|---|
| committer | Egor Yusov <egor.yusov@gmail.com> | 2018-05-13 06:23:56 +0000 |
| commit | 8abd052c11b3121f6c8a1830b3cfeb388e01ba57 (patch) | |
| tree | ac7a3326bd330e964fcf133c144e4b7d0e83f285 /Graphics/GraphicsEngineVulkan | |
| parent | Implemented VK shader resource cache initialization (diff) | |
| download | DiligentCore-8abd052c11b3121f6c8a1830b3cfeb388e01ba57.tar.gz DiligentCore-8abd052c11b3121f6c8a1830b3cfeb388e01ba57.zip | |
Added texel uniform/storage buffer detection
Diffstat (limited to 'Graphics/GraphicsEngineVulkan')
| -rw-r--r-- | Graphics/GraphicsEngineVulkan/src/ShaderResourceLayoutVk.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/Graphics/GraphicsEngineVulkan/src/ShaderResourceLayoutVk.cpp b/Graphics/GraphicsEngineVulkan/src/ShaderResourceLayoutVk.cpp index bb7431a5..ff79ab41 100644 --- a/Graphics/GraphicsEngineVulkan/src/ShaderResourceLayoutVk.cpp +++ b/Graphics/GraphicsEngineVulkan/src/ShaderResourceLayoutVk.cpp @@ -399,8 +399,8 @@ void ShaderResourceLayoutVk::VkResource::CacheTexelBuffer(IDeviceObject* VkDescriptorSet vkDescrSet, Uint32 ArrayInd) { - VERIFY(SpirvAttribs.Type == SPIRVShaderResourceAttribs::ResourceType::UniformBuffer || - SpirvAttribs.Type == SPIRVShaderResourceAttribs::ResourceType::StorageBuffer, + VERIFY(SpirvAttribs.Type == SPIRVShaderResourceAttribs::ResourceType::UniformTexelBuffer || + SpirvAttribs.Type == SPIRVShaderResourceAttribs::ResourceType::StorageTexelBuffer, "Uniform or storage buffer resource is expected"); if (UpdateCachedResource(DstRes, ArrayInd, pBufferView, IID_BufferViewVk, "buffer view")) @@ -534,7 +534,12 @@ void ShaderResourceLayoutVk::VkResource::BindResource(IDeviceObject *pObj, Uint3 case SPIRVShaderResourceAttribs::ResourceType::StorageBuffer: CacheBuffer(pObj, DstRes, vkDescrSet, ArrayIndex); break; - + + case SPIRVShaderResourceAttribs::ResourceType::UniformTexelBuffer: + case SPIRVShaderResourceAttribs::ResourceType::StorageTexelBuffer: + CacheTexelBuffer(pObj, DstRes, vkDescrSet, ArrayIndex); + break; + case SPIRVShaderResourceAttribs::ResourceType::StorageImage: case SPIRVShaderResourceAttribs::ResourceType::SeparateImage: case SPIRVShaderResourceAttribs::ResourceType::SampledImage: |
