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:
@@ -433,11 +433,11 @@ void LLWorldMapView::draw()
|
||||
gGL.color4f(0.2f, 0.0f, 0.0f, 0.4f);
|
||||
|
||||
gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.vertex2f(left, top);
|
||||
gGL.vertex2f(left, bottom);
|
||||
gGL.vertex2f(right, bottom);
|
||||
gGL.vertex2f(right, top);
|
||||
gGL.vertex2f(right, bottom);
|
||||
gGL.end();
|
||||
gGL.blendFunc(LLRender::BF_SOURCE_ALPHA, LLRender::BF_ONE_MINUS_SOURCE_ALPHA);
|
||||
}
|
||||
@@ -475,15 +475,15 @@ void LLWorldMapView::draw()
|
||||
{
|
||||
gGL.getTexUnit(0)->bind(overlayimage);
|
||||
gGL.color4f(1.f, 1.f, 1.f, alpha);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.texCoord2f(0.f, 1.f);
|
||||
gGL.vertex3f(left, top, -0.5f);
|
||||
gGL.texCoord2f(0.f, 0.f);
|
||||
gGL.vertex3f(left, bottom, -0.5f);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex3f(right, bottom, -0.5f);
|
||||
gGL.texCoord2f(1.f, 1.f);
|
||||
gGL.vertex3f(right, top, -0.5f);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex3f(right, bottom, -0.5f);
|
||||
gGL.end();
|
||||
}
|
||||
}
|
||||
@@ -582,11 +582,11 @@ void LLWorldMapView::draw()
|
||||
gGL.color4f(0.5f, 0.0f, 0.0f, 0.4f);
|
||||
else
|
||||
gGL.color4f(0.2f, .2f, 0.2f, 0.4f);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.vertex2f(base_left+padding, base_top-padding);
|
||||
gGL.vertex2f(base_left+padding, base_bottom+padding);
|
||||
gGL.vertex2f(base_right - padding, base_top - padding);
|
||||
gGL.vertex2f(base_right-padding, base_bottom+padding);
|
||||
gGL.vertex2f(base_right-padding, base_top-padding);
|
||||
gGL.end();
|
||||
if(it != LLWorldMap::getInstance()->getMapBlockEnd(SIM_LAYER_OVERLAY))
|
||||
{
|
||||
@@ -610,11 +610,11 @@ void LLWorldMapView::draw()
|
||||
gGL.color4f(0.0f, 0.5f, 0.0f, 0.4f);
|
||||
else
|
||||
gGL.color4f(0.4f, 0.0f, 0.0f, 0.4f);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.vertex2f(block_left+padding, block_top-padding);
|
||||
gGL.vertex2f(block_left+padding, block_bottom+padding);
|
||||
gGL.vertex2f(block_right - padding, block_top - padding);
|
||||
gGL.vertex2f(block_right-padding, block_bottom+padding);
|
||||
gGL.vertex2f(block_right-padding, block_top-padding);
|
||||
gGL.end();
|
||||
|
||||
for(U32 sim_x=0;sim_x<MAP_BLOCK_SIZE;++sim_x)
|
||||
@@ -632,11 +632,11 @@ void LLWorldMapView::draw()
|
||||
const F32 sim_right = block_left + sim_x*sMapScale + sMapScale - (sim_x<(MAP_BLOCK_SIZE-1) ? 0 : padding);
|
||||
|
||||
gGL.color4f(0.0f, 0.0f, 0.4f, 0.4f);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.vertex2f(sim_left, sim_top);
|
||||
gGL.vertex2f(sim_left, sim_bottom);
|
||||
gGL.vertex2f(sim_right, sim_bottom);
|
||||
gGL.vertex2f(sim_right, sim_top);
|
||||
gGL.vertex2f(sim_right, sim_bottom);
|
||||
gGL.end();
|
||||
}
|
||||
}
|
||||
@@ -840,29 +840,29 @@ void LLWorldMapView::drawLegacyBackgroundLayers(S32 width, S32 height) {
|
||||
// Draw map image into RGB
|
||||
gGL.setColorMask(true, false);
|
||||
gGL.color4f(1.f, 1.f, 1.f, 1.f);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.texCoord2f(0.0f, 1.0f);
|
||||
gGL.vertex3f(left, top, -1.0f);
|
||||
gGL.texCoord2f(0.0f, 0.0f);
|
||||
gGL.vertex3f(left, bottom, -1.0f);
|
||||
gGL.texCoord2f(1.0f, 0.0f);
|
||||
gGL.vertex3f(right, bottom, -1.0f);
|
||||
gGL.texCoord2f(1.0f, 1.0f);
|
||||
gGL.vertex3f(right, top, -1.0f);
|
||||
gGL.texCoord2f(1.0f, 0.0f);
|
||||
gGL.vertex3f(right, bottom, -1.0f);
|
||||
gGL.end();
|
||||
// draw an alpha of 1 where the sims are visible
|
||||
gGL.setColorMask(false, true);
|
||||
gGL.color4f(1.f, 1.f, 1.f, 1.f);
|
||||
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.texCoord2f(0.0f, 1.0f);
|
||||
gGL.vertex2f(left, top);
|
||||
gGL.texCoord2f(0.0f, 0.0f);
|
||||
gGL.vertex2f(left, bottom);
|
||||
gGL.texCoord2f(1.0f, 0.0f);
|
||||
gGL.vertex2f(right, bottom);
|
||||
gGL.texCoord2f(1.0f, 1.0f);
|
||||
gGL.vertex2f(right, top);
|
||||
gGL.texCoord2f(1.0f, 0.0f);
|
||||
gGL.vertex2f(right, bottom);
|
||||
gGL.end();
|
||||
|
||||
gGL.setColorMask(true, true);
|
||||
@@ -919,15 +919,15 @@ F32 LLWorldMapView::drawLegacySimTile(LLSimInfo& sim_info, S32 left, S32 top, S3
|
||||
{
|
||||
gGL.getTexUnit(0)->bind(simimage);
|
||||
gGL.color4f(1.f, 1.f, 1.f, alpha);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.texCoord2f(0.f, 1.f);
|
||||
gGL.vertex2f(left, top);
|
||||
gGL.texCoord2f(0.f, 0.f);
|
||||
gGL.vertex2f(left, bottom);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex2f(right, bottom);
|
||||
gGL.texCoord2f(1.f, 1.f);
|
||||
gGL.vertex2f(right, top);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex2f(right, bottom);
|
||||
gGL.end();
|
||||
}
|
||||
}
|
||||
@@ -1045,15 +1045,15 @@ bool LLWorldMapView::drawMipmapLevel(S32 width, S32 height, S32 level, bool load
|
||||
gGL.getTexUnit(0)->bind(simimage.get());
|
||||
simimage->setAddressMode(LLTexUnit::TAM_CLAMP);
|
||||
gGL.color4f(1.f, 1.0f, 1.0f, 1.0f);
|
||||
gGL.begin(LLRender::QUADS);
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.texCoord2f(0.f, 1.f);
|
||||
gGL.vertex3f(left, top, 0.f);
|
||||
gGL.texCoord2f(0.f, 0.f);
|
||||
gGL.vertex3f(left, bottom, 0.f);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex3f(right, bottom, 0.f);
|
||||
gGL.texCoord2f(1.f, 1.f);
|
||||
gGL.vertex3f(right, top, 0.f);
|
||||
gGL.texCoord2f(1.f, 0.f);
|
||||
gGL.vertex3f(right, bottom, 0.f);
|
||||
gGL.end();
|
||||
#if DEBUG_DRAW_TILE
|
||||
drawTileOutline(level, top, left, bottom, right);
|
||||
|
||||
Reference in New Issue
Block a user