Paul Gofman : wined3d: Do not zero 'w' with zero norm for 'nrm' opcode in GLSL backend.

Alexandre Julliard julliard at winehq.org
Thu Jun 13 15:40:39 CDT 2019


Module: wine
Branch: master
Commit: c13351c05af43aa542938e0c0935b154a8166905
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=c13351c05af43aa542938e0c0935b154a8166905

Author: Paul Gofman <gofmanp at gmail.com>
Date:   Thu Jun 13 16:57:01 2019 +0300

wined3d: Do not zero 'w' with zero norm for 'nrm' opcode in GLSL backend.

Signed-off-by: Paul Gofman <gofmanp at gmail.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wined3d/glsl_shader.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 9202fb6..326733d 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -4117,16 +4117,8 @@ static void shader_glsl_nrm(const struct wined3d_shader_instruction *ins)
                 src_param.param_str, src_param.param_str);
     shader_glsl_append_dst(buffer, ins);
 
-    if (mask_size > 1)
-    {
-        shader_addline(buffer, "tmp0.x == 0.0 ? vec%u(0.0) : (%s * inversesqrt(tmp0.x)));\n",
-                mask_size, src_param.param_str);
-    }
-    else
-    {
-        shader_addline(buffer, "tmp0.x == 0.0 ? 0.0 : (%s * inversesqrt(tmp0.x)));\n",
-                src_param.param_str);
-    }
+    shader_addline(buffer, "tmp0.x == 0.0 ? %s : (%s * inversesqrt(tmp0.x)));\n",
+            src_param.param_str, src_param.param_str);
 }
 
 static void shader_glsl_scalar_op(const struct wined3d_shader_instruction *ins)




More information about the wine-cvs mailing list