On Tue, 2009-03-17 at 19:20 -0700, Brian Paul wrote:
> + if (st->ctx->Polygon.StippleFlag) {
> + invert_stipple(st->state.poly_stipple.stipple,
> st->ctx->PolygonStipple,
> + st->ctx->DrawBuffer->Height);
> st->pipe->set_polygon_stipple(st->pipe,
> &st->state.poly_stipple);
> }
> }
>
>
> +/** Update the stipple when the pattern or window height changes */
> const struct st_tracked_state st_update_polygon_stipple = {
> "st_update_polygon_stipple", /*
> name */
> { /* dirty */
> - (_NEW_POLYGONSTIPPLE), /* mesa */
> + (_NEW_POLYGONSTIPPLE |
> + _NEW_BUFFERS), /* mesa */
> 0, /* st */
Brian,
I'm not sure that the test for ctx->Polygon.StippleFlag makes sense here
- if an app leaves the stipple pattern alone but flips the enable bit on
and off, you'll end up re-uploading the same pattern to the driver again
& again.
It's also worth noting that currently enable(POLYGON_STIPPLE) only
raises the NEW_POLYGON flag (not NEW_POLYGONSTIPPLE), on the logic that
that flag is part of ctx->Polygon, not ctx->PolygonStipple.
Keith
------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev