Opengl渲染纹理纹理将透明部分留作黑色(见图)

时间:2012-08-17 05:31:10

标签: opengl-es

顶部纹理的黑色部分是透明的,但在opengl es中呈现为黑色。 我没有任何混合渲染,不知道我需要什么

我该如何解决这个问题?感谢

这是我的着色器:

    precision mediump float;                           
    varying vec2 v_texCoord;                            
    uniform sampler2D s_texture;
    uniform lowp float distance;
    uniform lowp float slope;     

    void main() 
    {
        highp vec4 color = vec4(1.0);

        highp float d = v_texCoord.y * slope + distance;

        highp vec4 c = texture2D(s_texture, v_texCoord);

        c = (c - d * color) / (1.0 -d);

        //vec4 textureColor =  texture2D( s_texture, v_texCoord );


        //gl_FragColor =  textureColor;
        gl_FragColor =  c;
    }

Picture

1 个答案:

答案 0 :(得分:0)

  

我没有任何混合渲染,不知道是不是我需要

是的,如果您希望某些内容透明,则需要blending或根据Alpha值丢弃片段。