OSDN Git Service

added _NEW_PROGRAM to check_state flags for pipeline stages (fixes vparray demo bug)
authorBrian Paul <brian.paul@tungstengraphics.com>
Sat, 31 Jan 2004 19:39:04 +0000 (19:39 +0000)
committerBrian Paul <brian.paul@tungstengraphics.com>
Sat, 31 Jan 2004 19:39:04 +0000 (19:39 +0000)
src/mesa/tnl/t_vb_fog.c
src/mesa/tnl/t_vb_light.c
src/mesa/tnl/t_vb_normals.c
src/mesa/tnl/t_vb_points.c
src/mesa/tnl/t_vb_texgen.c
src/mesa/tnl/t_vb_texmat.c

index 2ad41f5..bbbf54b 100644 (file)
@@ -241,7 +241,7 @@ static void free_fog_data( struct tnl_pipeline_stage *stage )
 const struct tnl_pipeline_stage _tnl_fog_coordinate_stage =
 {
    "build fog coordinates",    /* name */
-   _NEW_FOG,                   /* check_state */
+   _NEW_FOG|_NEW_PROGRAM,      /* check_state */
    _NEW_FOG,                   /* run_state */
    GL_FALSE,                   /* active? */
    0,                          /* inputs */
index 3ca2539..1d260fa 100644 (file)
@@ -352,7 +352,7 @@ static void dtr( struct tnl_pipeline_stage *stage )
 const struct tnl_pipeline_stage _tnl_lighting_stage =
 {
    "lighting",                 /* name */
-   _NEW_LIGHT,                 /* recheck */
+   _NEW_LIGHT|_NEW_PROGRAM,                    /* recheck */
    _NEW_LIGHT|_NEW_MODELVIEW,  /* recalc -- modelview dependency
                                 * otherwise not captured by inputs
                                 * (which may be _TNL_BIT_POS) */
index 2908f1a..2247313 100644 (file)
@@ -179,6 +179,7 @@ static void free_normal_data( struct tnl_pipeline_stage *stage )
 
 #define _TNL_NEW_NORMAL_TRANSFORM        (_NEW_MODELVIEW| \
                                          _NEW_TRANSFORM| \
+                                         _NEW_PROGRAM| \
                                           _MESA_NEW_NEED_NORMALS| \
                                           _MESA_NEW_NEED_EYE_COORDS)
 
index 9ef98fa..1990886 100644 (file)
@@ -111,10 +111,10 @@ static void free_point_data( struct tnl_pipeline_stage *stage )
 const struct tnl_pipeline_stage _tnl_point_attenuation_stage =
 {
    "point size attenuation",   /* name */
-   _NEW_POINT,                 /* build_state_change */
-   _NEW_POINT,                 /* run_state_change */
+   _NEW_POINT|_NEW_PROGRAM,    /* check_state */
+   _NEW_POINT,                 /* run_state */
    GL_FALSE,                   /* active */
-   _TNL_BIT_POS,                       /* inputs */
+   _TNL_BIT_POS,               /* inputs */
    _TNL_BIT_POS,               /* outputs */
    0,                          /* changed_inputs (temporary value) */
    NULL,                       /* stage private data */
index 68ee089..64d569a 100644 (file)
@@ -678,7 +678,7 @@ static void free_texgen_data( struct tnl_pipeline_stage *stage )
 const struct tnl_pipeline_stage _tnl_texgen_stage =
 {
    "texgen",                   /* name */
-   _NEW_TEXTURE,               /* when to call check() */
+   _NEW_TEXTURE|_NEW_PROGRAM,  /* when to call check() */
    _NEW_TEXTURE,               /* when to invalidate stored data */
    GL_FALSE,                   /* active? */
    0,                          /* inputs */
index 363a76a..221dd58 100644 (file)
@@ -137,7 +137,7 @@ static void free_texmat_data( struct tnl_pipeline_stage *stage )
 const struct tnl_pipeline_stage _tnl_texture_transform_stage =
 {
    "texture transform",                        /* name */
-   _NEW_TEXTURE|_NEW_TEXTURE_MATRIX,   /* check_state */
+   _NEW_TEXTURE|_NEW_TEXTURE_MATRIX|_NEW_PROGRAM,      /* check_state */
    _NEW_TEXTURE|_NEW_TEXTURE_MATRIX,   /* run_state */
    GL_FALSE,                           /* active? */
    0,                                  /* inputs */