[PATCH vkd3d 5/7] vkd3d: Set VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT for buffers.

Józef Kucia joseph.kucia at gmail.com
Tue Jun 18 03:07:51 CDT 2019


From: Józef Kucia <jkucia at codeweavers.com>

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 libs/vkd3d/resource.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/libs/vkd3d/resource.c b/libs/vkd3d/resource.c
index d005fa8865aa..bcf523e47d75 100644
--- a/libs/vkd3d/resource.c
+++ b/libs/vkd3d/resource.c
@@ -523,10 +523,16 @@ HRESULT vkd3d_create_buffer(struct d3d12_device *device,
             | VK_BUFFER_USAGE_VERTEX_BUFFER_BIT
             | VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT;
 
-    if (heap_type == D3D12_HEAP_TYPE_DEFAULT && device->vk_info.EXT_transform_feedback)
+    if (heap_type == D3D12_HEAP_TYPE_DEFAULT)
     {
-        buffer_info.usage |= VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT
-                | VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT;
+        if (device->vk_info.EXT_conditional_rendering)
+            buffer_info.usage |= VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT;
+
+        if (device->vk_info.EXT_transform_feedback)
+        {
+            buffer_info.usage |= VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT
+                    | VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT;
+        }
     }
 
     if (heap_type == D3D12_HEAP_TYPE_UPLOAD)
-- 
2.21.0




More information about the wine-devel mailing list