Stefan Dösinger : wined3d: Handle input modifiers in texcrd with arb shaders.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Mar 27 06:58:40 CDT 2007
Module: wine
Branch: master
Commit: 929116f23c0606a28d0b242b6cdd50e19bdf6532
URL: http://source.winehq.org/git/wine.git/?a=commit;h=929116f23c0606a28d0b242b6cdd50e19bdf6532
Author: Stefan Dösinger <stefan at codeweavers.com>
Date: Sat Mar 24 16:08:22 2007 +0100
wined3d: Handle input modifiers in texcrd with arb shaders.
---
dlls/wined3d/arb_program_shader.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c
index 2185455..e6106cd 100644
--- a/dlls/wined3d/arb_program_shader.c
+++ b/dlls/wined3d/arb_program_shader.c
@@ -663,7 +663,6 @@ void pshader_hw_texcoord(SHADER_OPCODE_ARG* arg) {
IWineD3DPixelShaderImpl* This = (IWineD3DPixelShaderImpl*) arg->shader;
DWORD dst = arg->dst;
- DWORD* src = arg->src;
SHADER_BUFFER* buffer = arg->buffer;
DWORD hex_version = This->baseShader.hex_version;
@@ -674,8 +673,10 @@ void pshader_hw_texcoord(SHADER_OPCODE_ARG* arg) {
shader_addline(buffer, "MOV_SAT T%u%s, fragment.texcoord[%u];\n", reg, tmp, reg);
} else {
DWORD reg1 = dst & WINED3DSP_REGNUM_MASK;
- DWORD reg2 = src[0] & WINED3DSP_REGNUM_MASK;
- shader_addline(buffer, "MOV R%u%s, fragment.texcoord[%u];\n", reg1, tmp, reg2);
+ char reg_src[40];
+
+ pshader_gen_input_modifier_line(buffer, arg->src[0], 0, reg_src);
+ shader_addline(buffer, "MOV R%u%s, %s;\n", reg1, tmp, reg_src);
}
}
More information about the wine-cvs
mailing list