Opengl es 如何在着色器中更改纹理的透明度

Opengl es 如何在着色器中更改纹理的透明度,opengl-es,shader,alpha,Opengl Es,Shader,Alpha,我想创建一个着色器,它会将纹理的alpha颜色从不可见变为可见 我见过改变gl_FragColor.a的方法。但对我来说,它不起作用。我在那里设置的所有屏幕都是黑色的 precision mediump float; uniform vec4 vColor; uniform sampler2D uTexture; varying vec2 vTexCoordinate; uniform float alphaMod; void main(){ gl_FragColor = textu

我想创建一个着色器,它会将纹理的alpha颜色从不可见变为可见

我见过改变gl_FragColor.a的方法。但对我来说,它不起作用。我在那里设置的所有屏幕都是黑色的

precision mediump float;
uniform vec4 vColor;
uniform sampler2D uTexture;
varying vec2 vTexCoordinate;
uniform float alphaMod;

void main(){

    gl_FragColor = texture2D(uTexture, vTexCoordinate);
    gl_FragColor.a = alphaMod;
}

修改后的对象应该几乎看不见,但目前不可见。

1。如果删除行
gl\u FragColor.a=alphaMod,是否看到纹理?2.如果是,那么如果设置
gl\u FragColor.a=0.5会发生什么当我设置gl_FragColor.a=0.5时;然后纹理几乎看不见。但我不明白为什么会这样。当它为0或1时,纹理不可见。是否设置
gl\u FragColor.a=1
gl_FragColor.a=1.0?我只设置了1。设置1.0修复此问题。是的,您有权。我在调用坏变量。感谢您解释如何更改gl_FragColor.1。如果删除行
gl\u FragColor.a=alphaMod,是否看到纹理?2.如果是,那么如果设置
gl\u FragColor.a=0.5会发生什么当我设置gl_FragColor.a=0.5时;然后纹理几乎看不见。但我不明白为什么会这样。当它为0或1时,纹理不可见。是否设置
gl\u FragColor.a=1
gl_FragColor.a=1.0?我只设置了1。设置1.0修复此问题。是的,您有权。我在调用坏变量。感谢您解释如何更改gl_FragColor。