summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/draw/draw_gs_tmp.h
diff options
context:
space:
mode:
authorZack Rusin <zackr@vmware.com>2010-06-17 12:05:15 -0400
committerZack Rusin <zackr@vmware.com>2010-06-17 12:05:15 -0400
commitf542a2770a5ac3eb487cd3723cf98a383779a98d (patch)
treecb3d5eaa692bb5ba4dc004a224a379a98d1dbdb8 /src/gallium/auxiliary/draw/draw_gs_tmp.h
parent06b854752f8a550ddd299610e0e22c8f929109e2 (diff)
draw: implement triangle lists with adjacency support in gs
Diffstat (limited to 'src/gallium/auxiliary/draw/draw_gs_tmp.h')
-rw-r--r--src/gallium/auxiliary/draw/draw_gs_tmp.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/draw/draw_gs_tmp.h b/src/gallium/auxiliary/draw/draw_gs_tmp.h
index e906f08aeb..ff83cebb45 100644
--- a/src/gallium/auxiliary/draw/draw_gs_tmp.h
+++ b/src/gallium/auxiliary/draw/draw_gs_tmp.h
@@ -118,6 +118,13 @@ static void FUNC( struct draw_geometry_shader *shader,
}
break;
+ case PIPE_PRIM_TRIANGLES_ADJACENCY:
+ for (i = 0; i+5 < count; i += 5) {
+ TRI_ADJ( shader, i + 0, i + 1, i + 2,
+ i + 3, i + 4, i + 5);
+ }
+ break;
+
default:
debug_assert(!"Unsupported primitive in geometry shader");
break;
@@ -126,6 +133,7 @@ static void FUNC( struct draw_geometry_shader *shader,
#undef TRIANGLE
+#undef TRI_ADJ
#undef POINT
#undef LINE
#undef LINE_ADJ