@@ -154,6 +154,26 @@ pub enum Primitive {
154
154
/// Every three consecutive vertices represent a single triangle. For example, with `[a, b, c,
155
155
/// d]`, `a`, `b`, and `c` form a triangle, and `b`, `c`, and `d` form a triangle.
156
156
TriangleStrip ,
157
+ /// Each quadtruplet of vertices represent a single line segment with adjacency information.
158
+ /// For example, with `[a, b, c, d]`, `b` and `c` form a line, and `a` and `d` are the adjacent
159
+ /// vertices.
160
+ LineListAdjacency ,
161
+ /// Every four consecutive vertices represent a single line segment with adjacency information.
162
+ /// For example, with `[a, b, c, d, e]`, `[a, b, c, d]` form a line segment with adjacency, and
163
+ /// `[b, c, d, e]` form a line segment with adjacency.
164
+ LineStripAdjacency ,
165
+ /// Each sextuplet of vertices represent a single traingle with adjacency information. For
166
+ /// example, with `[a, b, c, d, e, f]`, `a`, `c`, and `e` form a traingle, and `b`, `d`, and
167
+ /// `f` are the adjacent vertices, where `b` is adjacent to the edge formed by `a` and `c`, `d`
168
+ /// is adjacent to the edge `c` and `e`, and `f` is adjacent to the edge `e` and `a`.
169
+ TriangleListAdjacency ,
170
+ /// Every even-numbered vertex (every other starting from the first) represents an additional
171
+ /// vertex for the triangle strip, while odd-numbered vertices (every other starting from the
172
+ /// second) represent adjacent vertices. For example, with `[a, b, c, d, e, f, g, h]`, `[a, c,
173
+ /// e, g]` form a triangle strip, and `[b, d, f, h]` are the adjacent vertices, where `b`, `d`,
174
+ /// and `f` are adjacent to the first triangle in the strip, and `d`, `f`, and `h` are adjacent
175
+ /// to the second.
176
+ TriangleStripAdjacency ,
157
177
/// Patch list,
158
178
/// used with shaders capable of producing primitives on their own (tessellation)
159
179
PatchList ( PatchSize ) ,
0 commit comments