2
作爲標題,gl_FragColor.a = 0應該使事物透明。那麼丟棄的差異是什麼?在OpenGL Fragment Shader中,gl_FragColor.a = 0和discard有什麼區別?
對於以下代碼
varying vec3 f_color;
uniform sampler2D mytexture;
varying vec2 texCoords;
float cutoff = 0.5;
void main(void) {
gl_FragColor = texture2D(mytexture,texCoords);
if(gl_FragColor.a < cutoff) discard;
}
丟棄將工作,但如果我gl_FragColor.a = 0替換丟棄; ,它沒有效果。爲什麼?