diff options
-rw-r--r-- | autobuild.xml | 13 | ||||
-rw-r--r-- | indra/newview/pipeline.cpp | 60 |
2 files changed, 45 insertions, 28 deletions
diff --git a/autobuild.xml b/autobuild.xml index bddd17b3a8..63f8075568 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -1110,9 +1110,9 @@ <key>archive</key> <map> <key>hash</key> - <string>77fc9c5e32582444496d59cbe0ec83b6</string> + <string>fddc6cc31875805517a6c3b674869160</string> <key>url</key> - <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/253622/arch/Darwin/installer/llphysicsextensions-0.1-darwin-20120411.tar.bz2</string> + <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/253697/arch/Darwin/installer/llphysicsextensions-0.1-darwin-20120412.tar.bz2</string> </map> <key>name</key> <string>darwin</string> @@ -1122,9 +1122,9 @@ <key>archive</key> <map> <key>hash</key> - <string>95e159db5cf44ce1c696f2c5df7ad861</string> + <string>5afb1c9678b3b503ba89432a992c7d3e</string> <key>url</key> - <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/253622/arch/Linux/installer/llphysicsextensions-0.1-linux-20120411.tar.bz2</string> + <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/253697/arch/Linux/installer/llphysicsextensions-0.1-linux-20120412.tar.bz2</string> </map> <key>name</key> <string>linux</string> @@ -1134,9 +1134,9 @@ <key>archive</key> <map> <key>hash</key> - <string>166a7b9e07a1c46875716dea1a218ce5</string> + <string>214d2fd16d526c9daa238d5a0fb2714d</string> <key>url</key> - <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/253622/arch/CYGWIN/installer/llphysicsextensions-0.1-windows-20120411.tar.bz2</string> + <string>http://s3-proxy.lindenlab.com/private-builds-secondlife-com/hg/repo/stinson_llpathinglibrary/rev/253697/arch/CYGWIN/installer/llphysicsextensions-0.1-windows-20120412.tar.bz2</string> </map> <key>name</key> <string>windows</string> @@ -2432,3 +2432,4 @@ <string>1.2</string> </map> </llsd> + diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 526b4bb8d4..e6de14d801 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -4363,25 +4363,26 @@ void LLPipeline::renderDebug() //NavMesh
if ( pathfindingConsole->isRenderNavMesh() )
- { gGL.flush();
+ {
+ gGL.flush();
glLineWidth(2.0f);
LLGLEnable cull(GL_CULL_FACE);
LLGLDisable blend(GL_BLEND);
- int materialIndex = pathfindingConsole->getHeatMapType();
+ int materialIndex = pathfindingConsole->getHeatMapType();
if ( pathfindingConsole->isRenderWorld() )
{
LLGLEnable blend(GL_BLEND);
gPathfindingProgram.uniform1f("alpha_scale", 0.66f);
- llPathingLibInstance->renderNavMesh( materialIndex );
+ llPathingLibInstance->renderNavMesh( materialIndex );
}
else
{
llPathingLibInstance->renderNavMesh( materialIndex );
}
- //render edges
+ //render edges
if (LLGLSLShader::sNoFixedFunction)
{
gPathfindingNoNormalsProgram.bind();
@@ -4396,14 +4397,14 @@ void LLPipeline::renderDebug() }
gGL.flush();
- glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
- glLineWidth(1.0f);
- gGL.flush();
- }
+ glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
+ glLineWidth(1.0f);
+ gGL.flush();
+ }
//User designated path
if ( LLPathfindingPathTool::getInstance()->isRenderPath() )
{
- LLGLEnable blend(GL_BLEND);
+ //The path
if (LLGLSLShader::sNoFixedFunction)
{
gUIProgram.bind();
@@ -4415,6 +4416,21 @@ void LLPipeline::renderDebug() {
llPathingLibInstance->renderPath();
}
+ //The bookends
+ LLGLEnable blend(GL_BLEND);
+ if (LLGLSLShader::sNoFixedFunction)
+ {
+ gPathfindingProgram.uniform1f("alpha_scale", 0.90f);
+ llPathingLibInstance->renderPathBookend( gGL, LLPathingLib::LLPL_START );
+ llPathingLibInstance->renderPathBookend( gGL, LLPathingLib::LLPL_END );
+ gPathfindingProgram.bind();
+ }
+ else
+ {
+ llPathingLibInstance->renderPathBookend( gGL, LLPathingLib::LLPL_START );
+ llPathingLibInstance->renderPathBookend( gGL, LLPathingLib::LLPL_END );
+ }
+
}
//physics/exclusion shapes
if ( pathfindingConsole->isRenderAnyShapes() )
@@ -4453,7 +4469,7 @@ void LLPipeline::renderDebug() //get rid of some z-fighting
glPolygonOffset(0.f, 0.f);
- LLGLEnable blend(GL_BLEND);
+ LLGLEnable blend(GL_BLEND);
{
gPathfindingProgram.uniform1f("ambiance", ambiance);
@@ -4485,7 +4501,7 @@ void LLPipeline::renderDebug() }
else
{
- glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
+ glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
gPathfindingProgram.uniform1f("ambiance", ambiance);
llPathingLibInstance->renderNavMeshShapesVBO( render_order[i] );
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
@@ -4524,7 +4540,7 @@ void LLPipeline::renderDebug() LLGLEnable blend(GL_BLEND);
LLGLDepthTest depth(GL_TRUE, GL_FALSE, GL_GREATER);
- gGL.flush();
+ gGL.flush();
glLineWidth(2.0f);
LLGLEnable cull(GL_CULL_FACE);
@@ -4535,11 +4551,11 @@ void LLPipeline::renderDebug() if (gSavedSettings.getBOOL("PathfindingXRayWireframe"))
{ //draw hidden wireframe as darker and less opaque
- glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );
+ glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );
gPathfindingProgram.uniform1f("ambiance", 1.f);
llPathingLibInstance->renderNavMesh( materialIndex );
- glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
- }
+ glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
+ }
else
{
gPathfindingProgram.uniform1f("ambiance", ambiance);
@@ -4548,27 +4564,27 @@ void LLPipeline::renderDebug() //render edges
if (LLGLSLShader::sNoFixedFunction)
- {
+ {
gPathfindingNoNormalsProgram.bind();
gPathfindingNoNormalsProgram.uniform1f("tint", gSavedSettings.getF32("PathfindingXRayTint"));
gPathfindingNoNormalsProgram.uniform1f("alpha_scale", gSavedSettings.getF32("PathfindingXRayOpacity"));
llPathingLibInstance->renderNavMeshEdges( materialIndex );
gPathfindingProgram.bind();
- }
+ }
else
{
llPathingLibInstance->renderNavMeshEdges( materialIndex );
- }
+ }
gGL.flush();
glLineWidth(1.0f);
- }
+ }
glPolygonOffset(0.f, 0.f);
- gGL.flush();
- if (LLGLSLShader::sNoFixedFunction)
- {
+ gGL.flush();
+ if (LLGLSLShader::sNoFixedFunction)
+ {
gPathfindingProgram.unbind();
}
}
|