]> git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
replaced qglArrayElement calls with qglVertex3f calls in showtris code,
authorhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Mon, 23 Apr 2007 20:44:45 +0000 (20:44 +0000)
committerhavoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Mon, 23 Apr 2007 20:44:45 +0000 (20:44 +0000)
this avoids issues with abysmal gl_vbo 1 performance on NVIDIA cards
(which seem to use a software fallback for drawing lines for some
reason)

git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@7164 d7cf8633-e32d-0410-b094-e92efae38249

gl_rmain.c

index a4f01092c3b481b55a55462b9225ea2721155f02..b34880db7bc118962656d5e8ab3bac8b3a19d766 100644 (file)
@@ -4178,9 +4178,10 @@ void R_DrawTrianglesAndNormals(entity_render_t *ent, qboolean drawtris, qboolean
                                qglBegin(GL_LINES);
                                for (k = 0;k < surface->num_triangles;k++, elements += 3)
                                {
-                                       qglArrayElement(elements[0]);qglArrayElement(elements[1]);
-                                       qglArrayElement(elements[1]);qglArrayElement(elements[2]);
-                                       qglArrayElement(elements[2]);qglArrayElement(elements[0]);
+#define GLVERTEXELEMENT(n) qglVertex3f(rsurface_vertex3f[elements[n]*3+0], rsurface_vertex3f[elements[n]*3+1], rsurface_vertex3f[elements[n]*3+2])
+                                       GLVERTEXELEMENT(0);GLVERTEXELEMENT(1);
+                                       GLVERTEXELEMENT(1);GLVERTEXELEMENT(2);
+                                       GLVERTEXELEMENT(2);GLVERTEXELEMENT(0);
                                }
                                qglEnd();
                                CHECKGLERROR