[PATCH 07/12] wined3d: Bind unordered access views even if they are not used by current shaders.

Józef Kucia jkucia at codeweavers.com
Thu Mar 2 18:30:33 CST 2017


An alternative would be to invalidate unordered access view bindings
when a shader is set.

Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
 dlls/wined3d/context.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c
index 784307c..579253f 100644
--- a/dlls/wined3d/context.c
+++ b/dlls/wined3d/context.c
@@ -3409,9 +3409,6 @@ static void context_load_unordered_access_resources(struct wined3d_context *cont
 
     for (i = 0; i < MAX_UNORDERED_ACCESS_VIEWS; ++i)
     {
-        if (!shader->reg_maps.uav_resource_info[i].type)
-            continue;
-
         if (!(view = views[i]))
             continue;
 
@@ -3446,12 +3443,10 @@ static void context_bind_unordered_access_views(struct wined3d_context *context,
 
     for (i = 0; i < MAX_UNORDERED_ACCESS_VIEWS; ++i)
     {
-        if (!shader->reg_maps.uav_resource_info[i].type)
-            continue;
-
         if (!(view = views[i]))
         {
-            WARN("No unordered access view bound at index %u.\n", i);
+            if (shader->reg_maps.uav_resource_info[i].type)
+                WARN("No unordered access view bound at index %u.\n", i);
             GL_EXTCALL(glBindImageTexture(i, 0, 0, GL_FALSE, 0, GL_READ_WRITE, GL_R8));
             continue;
         }
-- 
2.10.2




More information about the wine-patches mailing list