Stefan Dösinger : wined3d: Implement texldb.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Sep 11 07:28:48 CDT 2007
Module: wine
Branch: master
Commit: 8656713366ecc5ca5c64262b44bd95d4c9d6756b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=8656713366ecc5ca5c64262b44bd95d4c9d6756b
Author: Stefan Dösinger <stefandoesinger at gmx.at>
Date: Thu Aug 30 22:59:14 2007 +0200
wined3d: Implement texldb.
---
dlls/wined3d/glsl_shader.c | 13 +++++++++++--
dlls/wined3d/wined3d_private_types.h | 1 +
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 6dfa706..6f2f10a 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -1605,8 +1605,17 @@ void pshader_glsl_tex(SHADER_OPCODE_ARG* arg) {
} else {
glsl_src_param_t coord_param;
shader_glsl_add_src_param(arg, arg->src[0], arg->src_addr[0], mask, &coord_param);
- shader_addline(arg->buffer, "%s(Psampler%u, %s)%s);\n",
- sample_function.name, sampler_idx, coord_param.param_str, dst_swizzle);
+ if(arg->opcode_token & WINED3DSI_TEXLD_BIAS) {
+ glsl_src_param_t bias;
+ shader_glsl_add_src_param(arg, arg->src[0], arg->src_addr[0], WINED3DSP_WRITEMASK_3, &bias);
+
+ shader_addline(arg->buffer, "%s(Psampler%u, %s, %s)%s);\n",
+ sample_function.name, sampler_idx, coord_param.param_str,
+ bias.param_str, dst_swizzle);
+ } else {
+ shader_addline(arg->buffer, "%s(Psampler%u, %s)%s);\n",
+ sample_function.name, sampler_idx, coord_param.param_str, dst_swizzle);
+ }
}
}
diff --git a/dlls/wined3d/wined3d_private_types.h b/dlls/wined3d/wined3d_private_types.h
index 3550910..8a7750f 100644
--- a/dlls/wined3d/wined3d_private_types.h
+++ b/dlls/wined3d/wined3d_private_types.h
@@ -293,6 +293,7 @@ typedef enum _WINED3DSHADER_INSTRUCTION_OPCODE_TYPE {
/* Undocumented opcode control to identify projective texture lookups in ps 2.0 and later */
#define WINED3DSI_TEXLD_PROJECT 0x00010000
+#define WINED3DSI_TEXLD_BIAS 0x00020000
/** Shader version tokens, and shader end tokens **/
More information about the wine-cvs
mailing list