The rasterizer state object has accumulated a bewildering variety of
flags to select minor variations in vertex processing and rendering
behaviour.  I'm currently looking at consolidating this down to a
hopefully much smaller set.

Right now the things I'm looking at are:

Combine:
   - bypass_vs
   - bypass_clipping

To:
   - bypass_vs_clip_viewport

this adds an extra implication that the viewport is disabled, which was
almost always the case when using bypass_clipping.  What we end up with
is a flag saying incoming vertices are in have been shaded and
transformed to screen space already.  

Remove:
   - point_size_per_vertex

this is ignored by most or all gallium drivers.  Propose making the
vertex shader PSIZE output override the fixed pointsize state whenever
present.  This would require the state tracker to switch between two
vertex shaders, but that's effectively what drivers have to do anyway.

Remove:
    - origin_lower_left

this is a confusing flag as it sounds like we're altering the whole
coordinate system, but in fact all it alters is the calculation of
fragment shader POSITION input and also the application of polygon
stipple.  Propose moving the handling of both of these into the state
tracker.  This flag is always set in GL and drivers currently always
have to translate it away.


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
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to