draw: use instance divisor in draw_print_arrays()
authorBrian Paul <brianp@vmware.com>
Tue, 3 Aug 2010 20:13:13 +0000 (14:13 -0600)
committerBrian Paul <brianp@vmware.com>
Tue, 3 Aug 2010 22:37:58 +0000 (16:37 -0600)
src/gallium/auxiliary/draw/draw_pt.c

index 0a4132864250906a4b44d3854d828b43a15fad01..248927505da2d7d4d731be74bfeba7fa735b39d4 100644 (file)
@@ -259,6 +259,11 @@ draw_print_arrays(struct draw_context *draw, uint prim, int start, uint count)
       for (j = 0; j < draw->pt.nr_vertex_elements; j++) {
          uint buf = draw->pt.vertex_element[j].vertex_buffer_index;
          ubyte *ptr = (ubyte *) draw->pt.user.vbuffer[buf];
+
+         if (draw->pt.vertex_element[j].instance_divisor) {
+            ii = draw->instance_id / draw->pt.vertex_element[j].instance_divisor;
+         }
+
          ptr += draw->pt.vertex_buffer[buf].buffer_offset;
          ptr += draw->pt.vertex_buffer[buf].stride * ii;
          ptr += draw->pt.vertex_element[j].src_offset;