From b64773bf2d18ae7cb560977e89d10d70a4483290 Mon Sep 17 00:00:00 2001 From: prep Date: Fri, 24 Feb 2012 14:34:53 -0500 Subject: Fix for nacmesh viewing on low gfx setting and llpathinglib update. --- indra/llrender/llrendernavprim.cpp | 13 ++++++++----- indra/newview/llviewerdisplay.cpp | 1 + 2 files changed, 9 insertions(+), 5 deletions(-) (limited to 'indra') diff --git a/indra/llrender/llrendernavprim.cpp b/indra/llrender/llrendernavprim.cpp index bd05f05751..47cc996043 100644 --- a/indra/llrender/llrendernavprim.cpp +++ b/indra/llrender/llrendernavprim.cpp @@ -37,6 +37,7 @@ LLRenderNavPrim gRenderNav; //============================================================================= void LLRenderNavPrim::renderSegment( const LLVector3& start, const LLVector3& end, int color, bool overlayMode ) const { + bool ff = LLGLSLShader::sNoFixedFunction; LLGLSLShader::sNoFixedFunction = false; LLGLEnable smooth(GL_LINE_SMOOTH); LLColor4 colorA( color ); @@ -51,7 +52,7 @@ void LLRenderNavPrim::renderSegment( const LLVector3& start, const LLVector3& en gGL.end(); gGL.flush(); - LLGLSLShader::sNoFixedFunction = true; + LLGLSLShader::sNoFixedFunction = ff; LLGLDisable smoothout(GL_LINE_SMOOTH); glLineWidth(1.0f); } @@ -70,7 +71,8 @@ void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const L LLGLEnable cull(GL_CULL_FACE); LLColor4 colorA( color ); colorA*=1.25f; - gGL.color4fv( colorA.mV ); + gGL.color4fv( colorA.mV ); + bool ff = LLGLSLShader::sNoFixedFunction; LLGLSLShader::sNoFixedFunction = false; gGL.begin(LLRender::TRIANGLES); { @@ -82,14 +84,15 @@ void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const L gGL.flush(); glLineWidth(1.0f); glPolygonMode( GL_FRONT_AND_BACK, GL_FILL ); - LLGLSLShader::sNoFixedFunction = true; + LLGLSLShader::sNoFixedFunction = ff; } //============================================================================= void LLRenderNavPrim::renderNavMeshVB( LLVertexBuffer* pVBO, int vertCnt ) { LLGLEnable blend( GL_BLEND ); LLGLEnable cull( GL_CULL_FACE ); - glLineWidth(1.5f); + glLineWidth(1.5f); + bool ff = LLGLSLShader::sNoFixedFunction; LLGLSLShader::sNoFixedFunction = false; //pass 1 filled pVBO->setBuffer( LLVertexBuffer::MAP_VERTEX | LLVertexBuffer::MAP_COLOR | LLVertexBuffer::MAP_NORMAL ); @@ -98,7 +101,7 @@ void LLRenderNavPrim::renderNavMeshVB( LLVertexBuffer* pVBO, int vertCnt ) LLGLEnable smooth( GL_LINE_SMOOTH ); //pass 2 outlined pVBO->drawArrays( LLRender::TRIANGLES, 0, vertCnt ); - LLGLSLShader::sNoFixedFunction = true; + LLGLSLShader::sNoFixedFunction = ff; glLineWidth(1.0f); glPolygonMode( GL_FRONT_AND_BACK, GL_FILL ); LLGLDisable smoothout( GL_LINE_SMOOTH ); diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp index c58783d64b..2f64424e30 100644 --- a/indra/newview/llviewerdisplay.cpp +++ b/indra/newview/llviewerdisplay.cpp @@ -911,6 +911,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot) //NavMesh if (pathfindingConsole->isRenderNavMesh()) { + glClear(GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); llPathingLibInstance->renderNavMesh(); exclusiveDraw = true; } -- cgit v1.2.3