gl.blendFunc(A,B)
与gl.blendFuncSeparate(A,B,A,B)
或gl.blendFuncSeparate(A,B,ONE,ZERO)
相同吗?
gl.blendEquation(A)
与gl.blendEquation(A,A)
或gl.blendEquation(A,FUNC_ADD)
相同?
是否有关于此参数转换的文档?
答案 0 :(得分:1)
gl.blendFunc(A,B)
完全等于
gl.blendFunc(A,B,A,B)
来自https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/blendFuncSeparate
上的功能页面我们可以看到函数的语法
void gl.blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
如果您认为这些参数作为常数与相应的参数名称相乘,例如
,则会有所帮助gl.blendFuncSeparate(SRC_ALPHA, //sourcRGB will be multiplied by SRC_ALPHA
ONE_MINUS_SRC_ALPHA, //destinationRGB will be multiplied by ONE_MINUS_SRC_ALPHA
SRC_ALPHA, //sourceALPHA will be multiplied by SRC_ALPHA
ONE_MINUS_SRC_ALPHA); //destinationALPHA will be multiplied by ONE_MINUS_SRC_ALPHA
同样适用于gl.blendEquation()和blendEquationSeparate(),其中您可以为RGB颜色和alpha值指定不同的方程式,默认情况下,在gl.blendEquation中,相同的方程式应用于rgb和alpha值。 / p>
要更好地了解整个opengl混合系统如何工作,请从andersriggelsen.dk检查这个伟大的网页 http://andersriggelsen.dk/glblendfunc.php
答案 1 :(得分:0)