mesa: check for z=0 in _mesa_Vertex3dv()
It's very rare that a GL app calls glVertex3dv(), but one in particular calls it lot, always with Z = 0. Check for that condition and convert the call into glVertex2f. This reduces VBO memory used and reduces the number of times we have to switch between float[2] and float[3] vertex formats in the svga driver. This results in a small but measurable performance improvement. Reviewed-by: Charmaine Lee <charmainel@vmware.com>
This commit is contained in:
parent
eec8d7e7e0
commit
f04d7439a0
|
@ -629,7 +629,10 @@ _mesa_Vertex2sv( const GLshort *v )
|
|||
void GLAPIENTRY
|
||||
_mesa_Vertex3dv( const GLdouble *v )
|
||||
{
|
||||
VERTEX3( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
|
||||
if (v[2] == 0.0)
|
||||
VERTEX2( (GLfloat) v[0], (GLfloat) v[1] );
|
||||
else
|
||||
VERTEX3( (GLfloat) v[0], (GLfloat) v[1], (GLfloat) v[2] );
|
||||
}
|
||||
|
||||
void GLAPIENTRY
|
||||
|
|
Loading…
Reference in New Issue