Какой лучший способ?
Я пытался сделать это наивно с помощью фрагментного шейдера, который выглядит так:
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;
}
Но это не работает, потому что кажется, что gl_FragColor не содержит ничего значимого до запуска шейдера.
Какой правильный подход?