diff options
author | Dave Parks <davep@lindenlab.com> | 2012-04-05 00:28:04 -0500 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2012-04-05 00:28:04 -0500 |
commit | 669addd719fea9376dde00b2c2b22562aa8d8b78 (patch) | |
tree | 780437cb1fbeeba409edf2dce8057c8d454cd606 /indra | |
parent | 0b75e17f41b9c53fc7b74e4e875c5270fecf64e0 (diff) |
Fix for: assert when rendering paths, wireframe world when navmesh render disabled, heat map breaking walkables etc, and navmesh edges being offset from navmesh
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/pipeline.cpp | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index fb6e97ea9d..d00ad3b5bb 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -4341,11 +4341,7 @@ void LLPipeline::renderDebug() gPathfindingProgram.uniform1f("alpha_scale", 1.f); } - if ( pathfindingConsole->isRenderWorld() ) - { - glPolygonMode( GL_FRONT_AND_BACK, GL_LINE ); - } - else + if ( !pathfindingConsole->isRenderWorld() ) { const LLColor4 &clearColor = pathfindingConsole->mNavMeshColors.mNavMeshClear; gGL.setColorMask(true, true); @@ -4361,11 +4357,21 @@ void LLPipeline::renderDebug() glLineWidth(2.0f); LLGLEnable cull(GL_CULL_FACE); LLGLDisable blend(GL_BLEND); - + int materialIndex = pathfindingConsole->getHeatMapType(); - llPathingLibInstance->renderNavMesh( materialIndex ); - //render edges + if ( pathfindingConsole->isRenderWorld() ) + { + LLGLEnable blend(GL_BLEND); + gPathfindingProgram.uniform1f("alpha_scale", 0.66f); + llPathingLibInstance->renderNavMesh( materialIndex ); + } + else + { + llPathingLibInstance->renderNavMesh( materialIndex ); + } + + //render edges if (LLGLSLShader::sNoFixedFunction) { gPathfindingNoNormalsProgram.bind(); @@ -4388,7 +4394,17 @@ void LLPipeline::renderDebug() if ( pathfindingConsole->isRenderPath() ) { LLGLEnable blend(GL_BLEND); - llPathingLibInstance->renderPath(); + if (LLGLSLShader::sNoFixedFunction) + { + gUIProgram.bind(); + gGL.getTexUnit(0)->bind(LLViewerFetchedTexture::sWhiteImagep); + llPathingLibInstance->renderPath(); + gPathfindingProgram.bind(); + } + else + { + llPathingLibInstance->renderPath(); + } } //physics/exclusion shapes if ( pathfindingConsole->isRenderAnyShapes() ) |