Increase polygon offset for surfaces to cope with GeoMech models

This commit is contained in:
Jacob Støren 2020-01-30 11:54:30 +01:00
parent ddb5d0fd30
commit 35a8a96b97
3 changed files with 5 additions and 2 deletions

View File

@ -243,7 +243,8 @@ void RivSurfacePartMgr::applySingleColor()
caf::SurfaceEffectGenerator surfaceGen( cvf::Color4f( m_surfaceInView->surface()->color() ), caf::PO_1 );
cvf::ref<cvf::Effect> eff = surfaceGen.generateCachedEffect();
caf::SurfaceEffectGenerator surfaceGenBehind( cvf::Color4f( m_surfaceInView->surface()->color() ), caf::PO_2 );
caf::SurfaceEffectGenerator surfaceGenBehind( cvf::Color4f( m_surfaceInView->surface()->color() ),
caf::PO_POS_LARGE );
cvf::ref<cvf::Effect> effBehind = surfaceGenBehind.generateCachedEffect();
if ( m_nativeTrianglesPart.notNull() )
@ -301,7 +302,7 @@ void RivSurfacePartMgr::generatePartGeometry()
}
cvf::ref<cvf::Part> part = new cvf::Part;
part->setName( "Reservoir Surface" );
part->setName( "Intersected Reservoir Surface" );
part->setDrawable( geo.p() );
// Set mapping from triangle face index to cell index

View File

@ -136,6 +136,7 @@ cvf::ref<cvf::RenderStatePolygonOffset> EffectGenerator::createAndConfigurePolyg
{
case PO_1: rs->setFactor(1.0f); rs->setUnits(1.0f); break;
case PO_2: rs->setFactor(2.0f); rs->setUnits(2.0f); break;
case PO_POS_LARGE: rs->setFactor(3.0f); rs->setUnits(50.0f); break;
case PO_NEG_LARGE: rs->setFactor(-1.0f); rs->setUnits(-30.0f); break;
default:
CVF_FAIL_MSG("Unhandled polygon offset enum");

View File

@ -67,6 +67,7 @@ enum PolygonOffset
PO_NONE, // No polygon offset
PO_1, // 'Normal' positive polygon offset, equal to configurePolygonPositiveOffset(), ie factor=unit=1.0
PO_2, // More positive offset
PO_POS_LARGE, // Super high poly offset for special circumstances
PO_NEG_LARGE // Currently, a large negative offset
};