Added blendfunc checks when RenderDebugGL is TRUE.

This commit is contained in:
Shyotl
2013-03-30 01:26:07 -05:00
parent 03272c8875
commit b07ab02f54
5 changed files with 29 additions and 1 deletions

View File

@@ -1023,6 +1023,7 @@ void LLLightState::setSpotDirection(const LLVector3& direction)
}
}
LLRender::eBlendFactor blendfunc_debug[4]={LLRender::BF_UNDEF};
LLRender::LLRender()
: mDirty(false),
mCount(0),
@@ -1683,6 +1684,14 @@ void LLRender::setAlphaRejectSettings(eCompareFunc func, F32 value)
}
}
void check_blend_funcs()
{
llassert_always(blendfunc_debug[0] == LLRender::BF_SOURCE_ALPHA );
llassert_always(blendfunc_debug[1] == LLRender::BF_SOURCE_ALPHA );
llassert_always(blendfunc_debug[2] == LLRender::BF_ONE_MINUS_SOURCE_ALPHA );
llassert_always(blendfunc_debug[3] == LLRender::BF_ONE_MINUS_SOURCE_ALPHA );
}
void LLRender::blendFunc(eBlendFactor sfactor, eBlendFactor dfactor)
{
llassert(sfactor < BF_UNDEF);
@@ -1694,6 +1703,8 @@ void LLRender::blendFunc(eBlendFactor sfactor, eBlendFactor dfactor)
mCurrBlendAlphaSFactor = sfactor;
mCurrBlendColorDFactor = dfactor;
mCurrBlendAlphaDFactor = dfactor;
blendfunc_debug[0]=blendfunc_debug[1]=sfactor;
blendfunc_debug[2]=blendfunc_debug[3]=dfactor;
flush();
glBlendFunc(sGLBlendFactor[sfactor], sGLBlendFactor[dfactor]);
}
@@ -1719,6 +1730,8 @@ void LLRender::blendFunc(eBlendFactor color_sfactor, eBlendFactor color_dfactor,
mCurrBlendAlphaSFactor = alpha_sfactor;
mCurrBlendColorDFactor = color_dfactor;
mCurrBlendAlphaDFactor = alpha_dfactor;
blendfunc_debug[0]=blendfunc_debug[2]=color_sfactor;
blendfunc_debug[1]=blendfunc_debug[3]=alpha_sfactor;
flush();
glBlendFuncSeparateEXT(sGLBlendFactor[color_sfactor], sGLBlendFactor[color_dfactor],
sGLBlendFactor[alpha_sfactor], sGLBlendFactor[alpha_dfactor]);