Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Problem with degenerate triangles and GL_TRIANGLE_STRIP

I'm trying to draw multiple triangle strips with only one call to glDrawElements and my research on the matter tells me I need to use degenerate triangles. Maybe my understanding on the subject is wrong but I thought this should allow me to "jump" from a strip to another.

My whole code for this can be found on this recent question I posted, take a look there if you think it's relevant.

I'm basically trying to draw 2 quads(for simplification purposes) with 4 triangles of course, but separated from each other. For that I use indices like this:

unsigned int indices[] = { 0, 256, 1, 257, 257, 2, 2, 258, 3, 259 };

The first vertex of the first strip starts at 0 and the first vertex of the second strip starts at 256. This is the end result of this indices:

http://i.stack.imgur.com/6Q3FD.jpg

Is this correct or am I right in thinking that line "connecting" the 2 quads shouldn't be there at all?

like image 586
rfgamaral Avatar asked Apr 25 '11 04:04

rfgamaral


1 Answers

The image shown is correct. This trick doesn't work for wireframes. If you were drawing filled triangles, the triangle with zero area wouldn't show up, but you're drawing outlines.

like image 72
Ben Voigt Avatar answered Nov 15 '22 23:11

Ben Voigt