Stefan Dösinger : wined3d: Make the ARB index offset work with emulated MOVA.

Alexandre Julliard julliard at winehq.org
Mon Jun 22 09:04:11 CDT 2009


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

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Fri Jun 19 05:25:48 2009 +0200

wined3d: Make the ARB index offset work with emulated MOVA.

---

 dlls/wined3d/arb_program_shader.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index a43ad77..cab4bf7 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -1520,6 +1520,10 @@ static void shader_hw_mov(const struct wined3d_shader_instruction *ins)
         shader_addline(buffer, "ABS TA%s, %s;\n", write_mask, src0_param);
         shader_addline(buffer, "ADD TA%s, TA, mova_const.x;\n", write_mask);
         shader_addline(buffer, "FLR TA%s, TA;\n", write_mask);
+        if (((IWineD3DVertexShaderImpl *)shader)->rel_offset)
+        {
+            shader_addline(buffer, "ADD TA%s, TA, helper_const.z;\n", write_mask);
+        }
         shader_addline(buffer, "MUL A0_SHADOW%s, TA, A0_SHADOW;\n", write_mask);
 
         ((struct shader_arb_ctx_priv *)ins->ctx->backend_data)->addr_reg[0] = '\0';




More information about the wine-cvs mailing list