diff options
Diffstat (limited to 'chromium/third_party/dawn/src/dawn_native/vulkan/BindGroupLayoutVk.cpp')
-rw-r--r-- | chromium/third_party/dawn/src/dawn_native/vulkan/BindGroupLayoutVk.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/chromium/third_party/dawn/src/dawn_native/vulkan/BindGroupLayoutVk.cpp b/chromium/third_party/dawn/src/dawn_native/vulkan/BindGroupLayoutVk.cpp index 700e850318a..78f7a7a58ed 100644 --- a/chromium/third_party/dawn/src/dawn_native/vulkan/BindGroupLayoutVk.cpp +++ b/chromium/third_party/dawn/src/dawn_native/vulkan/BindGroupLayoutVk.cpp @@ -89,13 +89,16 @@ namespace dawn_native { namespace vulkan { ityp::vector<BindingIndex, VkDescriptorSetLayoutBinding> bindings; bindings.reserve(GetBindingCount()); + bool useBindingIndex = GetDevice()->IsToggleEnabled(Toggle::UseTintGenerator); + for (const auto& it : GetBindingMap()) { BindingNumber bindingNumber = it.first; BindingIndex bindingIndex = it.second; const BindingInfo& bindingInfo = GetBindingInfo(bindingIndex); VkDescriptorSetLayoutBinding vkBinding; - vkBinding.binding = static_cast<uint32_t>(bindingNumber); + vkBinding.binding = useBindingIndex ? static_cast<uint32_t>(bindingIndex) + : static_cast<uint32_t>(bindingNumber); vkBinding.descriptorType = VulkanDescriptorType(bindingInfo); vkBinding.descriptorCount = 1; vkBinding.stageFlags = VulkanShaderStageFlags(bindingInfo.visibility); |