[15/15] WineD3D: Remove dead nv texture shader code

Stefan Dösinger stefan at codeweavers.com
Wed Jan 10 04:48:10 CST 2007


The code is dead in set_tex_op because every card that has 
GL_NV_texture_shader will have GL_NV_register_combiners, so set_tex_op_nvrc 
will be used. And if the code is called for some reason it puts the device 
and gl context in a state it won't get out 
again(device->texture_shader_active, gl state TEXTURE_SHADER_NV activated)

I plan to implement bump mapping with GL_ATI_envmap_bumpmap(non-nvrc path) and 
GL_NV_texture_shader(in the nvrc codepath), if this code is needed again it 
can be fetched from the git history.
-------------- next part --------------
From 52f349cf49db4f19129e49724deacb01306e0639 Mon Sep 17 00:00:00 2001
From: Stefan Doesinger <stefan at codeweavers.com>
Date: Sun, 7 Jan 2007 14:36:10 +0100
Subject: [PATCH] WineD3D: Remove dead NV_TEXTURE_SHADER code

---
 dlls/wined3d/utils.c           |   82 ----------------------------------------
 dlls/wined3d/wined3d_private.h |    1 -
 2 files changed, 0 insertions(+), 83 deletions(-)

diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index c1dceb3..94a29d2 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -1670,88 +1670,6 @@ void set_tex_op(IWineD3DDevice *iface, BOOL isAlpha, int Stage, WINED3DTEXTUREOP
 
           case WINED3DTOP_BUMPENVMAP:
             {
-              if (GL_SUPPORT(NV_TEXTURE_SHADER)) {
-                /*
-                  texture unit 0: GL_TEXTURE_2D
-                  texture unit 1: GL_DOT_PRODUCT_NV
-                  texture unit 2: GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV
-                  texture unit 3: GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV
-                */
-                float m[2][2];
-
-                union {
-                  float f;
-                  DWORD d;
-                } tmpvalue;
-
-                tmpvalue.d = This->stateBlock->textureState[Stage][WINED3DTSS_BUMPENVMAT00];
-                m[0][0] = tmpvalue.f;
-                tmpvalue.d = This->stateBlock->textureState[Stage][WINED3DTSS_BUMPENVMAT01];
-                m[0][1] = tmpvalue.f;
-                tmpvalue.d = This->stateBlock->textureState[Stage][WINED3DTSS_BUMPENVMAT10];
-                m[1][0] = tmpvalue.f;
-                tmpvalue.d = This->stateBlock->textureState[Stage][WINED3DTSS_BUMPENVMAT11];
-                m[1][1] = tmpvalue.f;
-
-                /*FIXME("Stage %d matrix is (%.2f,%.2f),(%.2f,%.2f)\n", Stage, m[0][0], m[0][1], m[1][0], m[1][0]);*/
-
-                if (!This->texture_shader_active) {
-                  This->texture_shader_active = TRUE;
-                  glEnable(GL_TEXTURE_SHADER_NV);
-                }
-
-                /*
-                glEnable(GL_REGISTER_COMBINERS_NV);
-                glCombinerParameteriNV (GL_NUM_GENERAL_COMBINERS_NV, 1);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_RGB, GL_VARIABLE_A_NV, GL_TEXTURE0_ARB, GL_SIGNED_IDENTITY_NV, GL_RGB);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_RGB, GL_VARIABLE_B_NV, GL_NONE, GL_UNSIGNED_INVERT_NV, GL_RGB);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_RGB, GL_VARIABLE_C_NV, GL_TEXTURE2_ARB, GL_SIGNED_IDENTITY_NV, GL_RGB);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_RGB, GL_VARIABLE_D_NV, GL_NONE, GL_UNSIGNED_INVERT_NV, GL_RGB);
-                glCombinerOutputNV (GL_COMBINER0_NV, GL_RGB, GL_DISCARD_NV, GL_DISCARD_NV, GL_PRIMARY_COLOR_NV, 0, 0, 0, 0, 0);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_ALPHA, GL_VARIABLE_A_NV, GL_TEXTURE0_ARB, GL_SIGNED_IDENTITY_NV, GL_ALPHA);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_ALPHA, GL_VARIABLE_B_NV, GL_NONE, GL_UNSIGNED_INVERT_NV, GL_ALPHA);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_ALPHA, GL_VARIABLE_C_NV, GL_TEXTURE2_ARB, GL_SIGNED_IDENTITY_NV, GL_ALPHA);
-                glCombinerInputNV (GL_COMBINER0_NV, GL_ALPHA, GL_VARIABLE_D_NV, GL_NONE, GL_UNSIGNED_INVERT_NV, GL_ALPHA);
-                glCombinerOutputNV (GL_COMBINER0_NV, GL_ALPHA, GL_DISCARD_NV, GL_DISCARD_NV, GL_PRIMARY_COLOR_NV, 0, 0, 0, 0, 0);
-                glDisable (GL_PER_STAGE_CONSTANTS_NV);
-                glCombinerParameteriNV (GL_COLOR_SUM_CLAMP_NV, 0);
-                glFinalCombinerInputNV (GL_VARIABLE_A_NV, 0, GL_UNSIGNED_IDENTITY_NV, GL_RGB);
-                glFinalCombinerInputNV (GL_VARIABLE_B_NV, 0, GL_UNSIGNED_IDENTITY_NV, GL_RGB);
-                glFinalCombinerInputNV (GL_VARIABLE_C_NV, 0, GL_UNSIGNED_IDENTITY_NV, GL_RGB);
-                glFinalCombinerInputNV (GL_VARIABLE_D_NV, GL_PRIMARY_COLOR_NV, GL_UNSIGNED_IDENTITY_NV, GL_RGB);
-                glFinalCombinerInputNV (GL_VARIABLE_E_NV, 0, GL_UNSIGNED_IDENTITY_NV, GL_RGB);
-                glFinalCombinerInputNV (GL_VARIABLE_F_NV, 0, GL_UNSIGNED_IDENTITY_NV, GL_RGB);
-                glFinalCombinerInputNV (GL_VARIABLE_G_NV, GL_PRIMARY_COLOR_NV, GL_UNSIGNED_IDENTITY_NV, GL_ALPHA);
-                */
-                /*
-                int i;
-                for (i = 0; i < Stage; i++) {
-                  if (GL_SUPPORT(ARB_MULTITEXTURE)) {
-                    GL_ACTIVETEXTURE(i);
-                    glTexEnvi(GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_TEXTURE_2D);
-                    checkGLcall("Activate texture..");
-                  } else if (i>0) {
-                    FIXME("Program using multiple concurrent textures which this opengl implementation doesn't support\n");
-                  }
-                }
-                */
-                /*
-                  GL_ACTIVETEXTURE(Stage - 1);
-                  glTexEnvi(GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_TEXTURE_2D);
-                */
-                /*
-                GL_ACTIVETEXTURE(Stage);
-                checkGLcall("Activate texture.. to update const color");
-                glTexEnvi(GL_TEXTURE_SHADER_NV, GL_SHADER_OPERATION_NV, GL_OFFSET_TEXTURE_2D_NV);
-                checkGLcall("glTexEnv");
-                glTexEnvi(GL_TEXTURE_SHADER_NV, GL_PREVIOUS_TEXTURE_INPUT_NV, GL_TEXTURE0_ARB + Stage - 1);
-                checkGLcall("glTexEnv");
-                glTexEnvfv(GL_TEXTURE_SHADER_NV, GL_OFFSET_TEXTURE_MATRIX_NV, (float*)&m[0]);
-                checkGLcall("glTexEnv");
-                */
-                LEAVE_GL();
-                return;
-              }
             }
 
           case WINED3DTOP_BUMPENVMAPLUMINANCE:
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 0166637..5fe7c71 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -576,7 +576,6 @@ typedef struct IWineD3DDeviceImpl
 #define                         IS_TRACKING        1  /* tracking_parm is tracking diffuse color  */
 #define                         NEEDS_TRACKING     2  /* Tracking needs to be enabled when needed */
 #define                         NEEDS_DISABLE      3  /* Tracking needs to be disabled when needed*/
-    BOOL                    texture_shader_active;  /* TODO: Confirm use is correct */
     BOOL                    last_was_notclipped;
     BOOL                    untransformed;
     BOOL                    last_was_pshader;
-- 
1.4.4.3



More information about the wine-patches mailing list