Remove all QUADS usage. Replaced with TRIANGLES and TRIANGLE_STRIP. May do another pass and replace un-textured TRIANGLE_STRIPs with TRIANGLES to reduce flush calls.
This commit is contained in:
@@ -610,43 +610,55 @@ void LLManipScale::renderFaces( const LLBBox& bbox )
|
||||
{
|
||||
gGL.color4fv( default_normal_color.mV );
|
||||
LLGLDepthTest gls_depth(GL_FALSE);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLES);
|
||||
{
|
||||
// Face 0
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
|
||||
// Face 1
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
|
||||
// Face 2
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
|
||||
// Face 3
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
|
||||
// Face 4
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], max.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
|
||||
// Face 5
|
||||
gGL.vertex3f(min.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], min.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(min.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
gGL.vertex3f(max.mV[VX], max.mV[VY], min.mV[VZ]);
|
||||
}
|
||||
gGL.end();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user