#1282 Mesh lines : Use LEQUAL for depth test to make sure highest pri is visible

This commit is contained in:
Magne Sjaastad 2017-03-08 14:27:02 +01:00
parent 84f76e5242
commit 6c6049a317
3 changed files with 7 additions and 5 deletions

View File

@ -262,7 +262,7 @@ void RivFaultPartMgr::generatePartGeometry()
part->updateBoundingBox(); part->updateBoundingBox();
part->setEnableMask(meshFaultBit); part->setEnableMask(meshFaultBit);
part->setPriority(RivPartPriority::PartType::MeshLines); part->setPriority(RivPartPriority::PartType::FaultMeshLines);
m_nativeFaultGridLines = part; m_nativeFaultGridLines = part;
} }
@ -314,7 +314,7 @@ void RivFaultPartMgr::generatePartGeometry()
part->updateBoundingBox(); part->updateBoundingBox();
part->setEnableMask(meshFaultBit); part->setEnableMask(meshFaultBit);
part->setPriority(RivPartPriority::PartType::MeshLines); part->setPriority(RivPartPriority::PartType::FaultMeshLines);
m_oppositeFaultGridLines = part; m_oppositeFaultGridLines = part;
} }
@ -403,12 +403,12 @@ void RivFaultPartMgr::updatePartEffect()
if (m_nativeFaultGridLines.notNull()) if (m_nativeFaultGridLines.notNull())
{ {
m_nativeFaultGridLines->setPriority(RivPartPriority::PartType::TransparentMeshLines); m_nativeFaultGridLines->setPriority(RivPartPriority::PartType::FaultMeshLines);
} }
if (m_oppositeFaultGridLines.notNull()) if (m_oppositeFaultGridLines.notNull())
{ {
m_oppositeFaultGridLines->setPriority(RivPartPriority::PartType::TransparentMeshLines); m_oppositeFaultGridLines->setPriority(RivPartPriority::PartType::FaultMeshLines);
} }
} }
} }

View File

@ -40,6 +40,7 @@ public:
Intersection, Intersection,
CrossSectionNnc, CrossSectionNnc,
MeshLines, MeshLines,
FaultMeshLines,
Transparent, Transparent,
TransparentFault, TransparentFault,
TransparentNnc, TransparentNnc,
@ -47,5 +48,4 @@ public:
Highlight, Highlight,
Text Text
}; };
}; };

View File

@ -846,6 +846,8 @@ void MeshEffectGenerator::updateForShaderBasedRendering(cvf::Effect* effect) con
{ {
eff->setRenderState(new cvf::RenderStateLine(m_lineWidth)); eff->setRenderState(new cvf::RenderStateLine(m_lineWidth));
} }
eff->setRenderState(new cvf::RenderStateDepth(true, cvf::RenderStateDepth::LEQUAL));
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------