diff options
| -rw-r--r-- | indra/llrender/llrendernavprim.cpp | 17 | ||||
| -rw-r--r-- | indra/llrender/llrendernavprim.h | 4 | ||||
| -rw-r--r-- | indra/newview/llviewerdisplay.cpp | 2 | 
3 files changed, 16 insertions, 7 deletions
diff --git a/indra/llrender/llrendernavprim.cpp b/indra/llrender/llrendernavprim.cpp index 11e60548e2..1a0103e8f0 100644 --- a/indra/llrender/llrendernavprim.cpp +++ b/indra/llrender/llrendernavprim.cpp @@ -35,7 +35,7 @@  //=============================================================================
  LLRenderNavPrim gRenderNav;
  //=============================================================================
 -void LLRenderNavPrim::renderSegment( const LLVector3& start, const LLVector3& end, int color ) const
 +void LLRenderNavPrim::renderSegment( const LLVector3& start, const LLVector3& end, int color,bool overlayMode  ) const
  {	
  	LLGLSLShader::sNoFixedFunction = false;
  	LLColor4 colorA( color );	
 @@ -54,10 +54,17 @@ void LLRenderNavPrim::renderSegment( const LLVector3& start, const LLVector3& en  	glLineWidth(1.0f);	
  }
  //=============================================================================
 -void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const LLVector3& c, int color ) const
 +void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const LLVector3& c, int color,bool overlayMode  ) const
  {
 -	glLineWidth(1.5f);		
 -	glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );	
 +	glLineWidth(1.5f);	
 +	if ( overlayMode )
 +	{
 +		glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );	
 +	}
 +	else
 +	{
 +		glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );	
 +	}
  	LLGLDisable cull(GL_CULL_FACE);
  	LLColor4 colorA( color );	
  	colorA*=1.5f;
 @@ -71,6 +78,8 @@ void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const L  	}
  	gGL.end();		
  	gGL.flush();
 +	glLineWidth(1.0f);	
 +	glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );	
  	LLGLSLShader::sNoFixedFunction = true;
  }
  //=============================================================================
 diff --git a/indra/llrender/llrendernavprim.h b/indra/llrender/llrendernavprim.h index cd57fd2223..a30a14551d 100644 --- a/indra/llrender/llrendernavprim.h +++ b/indra/llrender/llrendernavprim.h @@ -40,9 +40,9 @@ class LLRenderNavPrim  {
  public:
  	//Draw a line
 -	void renderSegment( const LLVector3& start, const LLVector3& end, int color ) const;
 +	void renderSegment( const LLVector3& start, const LLVector3& end, int color,bool overlayMode  ) const;
  	//Draw simple tri
 -	void renderTri( const LLVector3& a, const LLVector3& b, const LLVector3& c, int color ) const;
 +	void renderTri( const LLVector3& a, const LLVector3& b, const LLVector3& c, int color,bool overlayMode  ) const;
  	//Draw the contents of vertex buffer
  	void renderNavMeshVB( LLVertexBuffer* pVBO, int vertCnt  );
 diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp index 2b2dd5ef7c..3cc025462b 100644 --- a/indra/newview/llviewerdisplay.cpp +++ b/indra/newview/llviewerdisplay.cpp @@ -920,7 +920,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot)  						glEnable(GL_DEPTH_TEST);                        
  						gGL.setSceneBlendType( LLRender::BT_ALPHA );
  						gGL.setAmbientLightColor( LLColor4::white );
 -						LLPathingLib::getInstance()->renderNavMesh();
 +						LLPathingLib::getInstance()->renderNavMesh( allowRenderables );
  						exclusiveDraw = true;
  					}
  					//physics/exclusion shapes
  | 
