什么是最好的方式?
我尝试使用看起来像这样的片段着色器天真地做到这一点:
varying lowp vec4 color;
void main()
{
lowp vec4 alpha = colorVarying.wwww;
const lowp vec4 one = vec4(1.0, 1.0, 1.0, 1.0);
lowp vec4 oneMinusAlpha = one-alpha;
gl_FragColor = gl_FragColor*oneMinusAlpha + colorVarying*alpha;
gl_FragColor.w = 1.0;
}
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为在着色器运行之前,gl_FragColor似乎不包含任何有意义的内容.
什么是正确的方法?