Mesa (master): intel: Add support for ARB_draw_elements_base_vertex.

Eric Anholt anholt at kemper.freedesktop.org
Tue Sep 8 22:14:52 UTC 2009


Module: Mesa
Branch: master
Commit: f959ccdfa6c8accd74b6e33040b716645f0a7057
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f959ccdfa6c8accd74b6e33040b716645f0a7057

Author: Eric Anholt <eric at anholt.net>
Date:   Thu Aug 27 14:59:19 2009 -0700

intel: Add support for ARB_draw_elements_base_vertex.

On the 965, we just drop the value into the primitive packet.  On non-945,
we rely on the sw tnl code handling it.

---

 src/mesa/drivers/dri/i965/brw_draw.c          |    2 +-
 src/mesa/drivers/dri/intel/intel_extensions.c |    2 ++
 2 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c
index 4411b24..42961dd 100644
--- a/src/mesa/drivers/dri/i965/brw_draw.c
+++ b/src/mesa/drivers/dri/i965/brw_draw.c
@@ -142,7 +142,7 @@ static void brw_emit_prim(struct brw_context *brw,
       prim_packet.start_vert_location += brw->ib.start_vertex_offset;
    prim_packet.instance_count = 1;
    prim_packet.start_instance_location = 0;
-   prim_packet.base_vert_location = 0;
+   prim_packet.base_vert_location = prim->basevertex;
 
    /* Can't wrap here, since we rely on the validated state. */
    brw->no_batch_wrap = GL_TRUE;
diff --git a/src/mesa/drivers/dri/intel/intel_extensions.c b/src/mesa/drivers/dri/intel/intel_extensions.c
index 125ca93..5431cf9 100644
--- a/src/mesa/drivers/dri/intel/intel_extensions.c
+++ b/src/mesa/drivers/dri/intel/intel_extensions.c
@@ -31,6 +31,7 @@
 
 
 #define need_GL_ARB_copy_buffer
+#define need_GL_ARB_draw_elements_base_vertex
 #define need_GL_ARB_framebuffer_object
 #define need_GL_ARB_map_buffer_range
 #define need_GL_ARB_occlusion_query
@@ -73,6 +74,7 @@
  */
 static const struct dri_extension card_extensions[] = {
    { "GL_ARB_copy_buffer",                GL_ARB_copy_buffer_functions },
+   { "GL_ARB_draw_elements_base_vertex",  GL_ARB_draw_elements_base_vertex_functions },
    { "GL_ARB_half_float_pixel",           NULL },
    { "GL_ARB_map_buffer_range",           GL_ARB_map_buffer_range_functions },
    { "GL_ARB_multitexture",               NULL },




More information about the mesa-commit mailing list