Skip to content
Snippets Groups Projects
Commit 22b877e7 authored by prep's avatar prep
Browse files

WIP: Navmesh vbos rendering fixes (added normal and color maps).

parent e2fd0266
No related branches found
No related tags found
No related merge requests found
......@@ -67,7 +67,7 @@ void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const L
}
LLGLDisable cull(GL_CULL_FACE);
LLColor4 colorA( color );
colorA*=1.5f;
colorA*=1.25f;
gGL.color4fv( colorA.mV );
LLGLSLShader::sNoFixedFunction = false;
gGL.begin(LLRender::TRIANGLES);
......@@ -86,11 +86,22 @@ void LLRenderNavPrim::renderTri( const LLVector3& a, const LLVector3& b, const L
void LLRenderNavPrim::renderNavMeshVB( LLVertexBuffer* pVBO, int vertCnt )
{
glLineWidth(1.5f);
glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
LLGLDisable cull(GL_CULL_FACE);
LLGLSLShader::sNoFixedFunction = false;
pVBO->setBuffer( LLVertexBuffer::MAP_VERTEX );
pVBO->drawArrays( LLRender::TRIANGLES, 0, vertCnt );
LLGLEnable depth(GL_DEPTH_TEST);
glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
LLGLEnable cull( GL_CULL_FACE );
//pass 1 filled
pVBO->setBuffer( LLVertexBuffer::MAP_VERTEX | LLVertexBuffer::MAP_COLOR | LLVertexBuffer::MAP_NORMAL );
pVBO->drawArrays( LLRender::TRIANGLES, 0, vertCnt );
//glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );
//static GLubyte red[]= { 255.0f, 0.0f, 0.0f, 255.0f };
//glColor4ubv( red );
//pass 2 outlined
//pVBO->drawArrays( LLRender::TRIANGLES, 0, vertCnt );
LLGLSLShader::sNoFixedFunction = true;
glLineWidth(1.0f);
glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
}
//=============================================================================
......@@ -915,24 +915,15 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot)
//Navmesh
if ( LLPathingLib::getInstance()->getRenderNavMeshState() )
{
glClearColor(0.0f, 0.0f, 0.0f, 0.5f);
glClearColor(0.0f, 0.0f, 0.0f, 0.5f);
glEnable(GL_DEPTH_TEST);
gGL.setSceneBlendType( LLRender::BT_ALPHA );
gGL.setAmbientLightColor( LLColor4::white );
LLPathingLib::getInstance()->renderNavMesh( allowRenderables );
exclusiveDraw = true;
}
//physics/exclusion shapes
if ( LLPathingLib::getInstance()->getRenderShapeState() )
{
glEnable(GL_DEPTH_TEST);
gGL.setSceneBlendType( LLRender::BT_REPLACE );
GLfloat LightAmbient[]= { 0.5f, 0.5f, 0.5f, 1.0f };
glLightfv(GL_LIGHT1, GL_AMBIENT, LightAmbient);
LLGLSUIDefault texture_state;
LLGLDepthTest gls_depth(GL_TRUE);
gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);
{
LLPathingLib::getInstance()->renderNavMeshShapesVBO();
exclusiveDraw = true;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment