[Mesa-dev] [PATCH 2/2] gallium: implement seamless cubemap extensions

Roland Scheidegger sroland at vmware.com
Tue May 3 10:55:55 PDT 2011


Am 03.05.2011 15:55, schrieb Marek Olšák:
> diff --git a/src/mesa/state_tracker/st_atom_rasterizer.c b/src/mesa/state_tracker/st_atom_rasterizer.c
> index 250cbb2..ac6d76a 100644
> --- a/src/mesa/state_tracker/st_atom_rasterizer.c
> +++ b/src/mesa/state_tracker/st_atom_rasterizer.c
> @@ -257,6 +257,9 @@ static void update_raster_state( struct st_context *st )
>     /* _NEW_FRAG_CLAMP */
>     raster->clamp_fragment_color = ctx->Color._ClampFragmentColor;
>  
> +   /* _NEW_TEXTURE */
> +   raster->seamless_cube_map = ctx->Texture.CubeMapSeamless != GL_FALSE;
> +
>     raster->gl_rasterization_rules = 1;
>  
>     cso_set_rasterizer(st->cso_context, raster);
> @@ -273,7 +276,8 @@ const struct st_tracked_state st_update_rasterizer = {
>         _NEW_POLYGON |
>         _NEW_PROGRAM |
>         _NEW_SCISSOR |
> -       _NEW_FRAG_CLAMP),      /* mesa state dependencies*/
> +       _NEW_FRAG_CLAMP |
> +       _NEW_TEXTURE),  /* mesa state dependencies */
>        ST_NEW_VERTEX_PROGRAM,  /* state tracker dependencies */
>     },
>     update_raster_state     /* update function */

Hmm seems rather unfortunate that this is _NEW_TEXTURE - looks like all
the rest of the bits are likely much lower frequency (and of course the
seamless bit itself probably only ever changes once). I can see now why
you made that a new bit. I'll defer that to Brian though.

Roland



More information about the mesa-dev mailing list