}
aCtx->SetSampleAlphaToCoverage (aCtx->ShaderManager()->MaterialState().HasAlphaCutoff());
+ const bool isForcedBlend = anAspectFace->Aspect()->AlphaMode() == Graphic3d_AlphaMode_MaskBlend;
+ if (isForcedBlend)
+ {
+ aCtx->core11fwd->glEnable (GL_BLEND);
+ aCtx->core11fwd->glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+ }
+
const Graphic3d_Vec4* aFaceColors = !myBounds.IsNull() && !toHilight && anAspectFace->Aspect()->InteriorStyle() != Aspect_IS_HIDDENLINE
? myBounds->Colors
: NULL;
}
drawArray (theWorkspace, aFaceColors, hasColorAttrib);
+ if (isForcedBlend)
+ {
+ aCtx->core11fwd->glDisable (GL_BLEND);
+ }
return;
}
aCtx->core11fwd->glCullFace (GL_BACK);
}
+
+ if (isForcedBlend)
+ {
+ aCtx->core11fwd->glDisable (GL_BLEND);
+ }
}
#if !defined(GL_ES_VERSION_2_0)