diff options
author | Ian Romanick <idr@us.ibm.com> | 2004-04-23 20:20:07 +0000 |
---|---|---|
committer | Ian Romanick <idr@us.ibm.com> | 2004-04-23 20:20:07 +0000 |
commit | e946688edac5cdf153652defae3ef732a3487416 (patch) | |
tree | 802e3f89877e006930aeab9ba363d33970dab82b /src/mesa/drivers/dri/r200/r200_context.h | |
parent | 199972cef06476d308c62c9b21f1ccffeb72cdb6 (diff) |
Convert R200 driver to use the t_vertex interface.
Diffstat (limited to 'src/mesa/drivers/dri/r200/r200_context.h')
-rw-r--r-- | src/mesa/drivers/dri/r200/r200_context.h | 40 |
1 files changed, 36 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/r200/r200_context.h b/src/mesa/drivers/dri/r200/r200_context.h index b147e250fa4..ae7d2f47bd3 100644 --- a/src/mesa/drivers/dri/r200/r200_context.h +++ b/src/mesa/drivers/dri/r200/r200_context.h @@ -39,6 +39,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #ifdef GLX_DIRECT_RENDERING #include <inttypes.h> +#include "tnl/t_vertex.h" #include "drm.h" #include "radeon_drm.h" #include "dri_util.h" @@ -611,12 +612,28 @@ struct r200_tcl_info { /* r200_swtcl.c */ struct r200_swtcl_info { - GLuint SetupIndex; - GLuint SetupNewInputs; GLuint RenderIndex; + + /** + * Size of a hardware vertex. This is calculated when \c ::vertex_attrs is + * installed in the Mesa state vector. + */ GLuint vertex_size; - GLuint vertex_stride_shift; - GLuint vertex_format; + + /** + * Attributes instructing the Mesa TCL pipeline where / how to put vertex + * data in the hardware buffer. + */ + struct tnl_attr_map vertex_attrs[VERT_ATTRIB_MAX]; + + /** + * Number of elements of \c ::vertex_attrs that are actually used. + */ + GLuint vertex_attr_count; + + /** + * Cached pointer to the buffer where Mesa will store vertex data. + */ GLubyte *verts; /* Fallback rasterization functions @@ -629,6 +646,21 @@ struct r200_swtcl_info { GLenum render_primitive; GLuint numverts; + /** + * Offset of the 4UB color data within a hardware (swtcl) vertex. + */ + GLuint coloroffset; + + /** + * Offset of the 3UB specular color data within a hardware (swtcl) vertex. + */ + GLuint specoffset; + + /** + * Should Mesa project vertex data or will the hardware do it? + */ + GLboolean needproj; + struct r200_dma_region indexed_verts; }; |