代码之家  ›  专栏  ›  技术社区  ›  Jason Rogers

使用glColor将纹理设置为半透明度时出现的问题

  •  1
  • Jason Rogers  · 技术社区  · 14 年前

    基本上我在opengl es 1.1中有一个功能齐全的ogl程序(2D游戏),除了一个问题:glcolor

    我正试图将我的一些纹理设置为半透明,我想按以下步骤操作;

    gl.glColor4f(1f, 1f, 1f, .5f);
    obj.draw(gl);
    ...
    
    gl.glColor4f(1f, 1f, 1f, 1f);
    

    我在用VBO做我的眩晕,我的纹理和索引。(如果相关)

    问题是没有东西可以设置为50%的透明度。。。

    我认为发布我所有的代码并不相关(主要是因为它分布在几个类中,有几个GL选项在变化(混合、剪刀等)。

    我想让人们告诉我,OGL的什么状态可以阻止glcolor表单像我想要的那样工作,应该检查什么函数,应该调用什么状态。

    杰森

    2 回复  |  直到 14 年前
        1
  •  1
  •   Jason Rogers    14 年前

    我终于有足够的时间一步一步地寻找我的踪迹并发现问题

    gl.glTexEnvf(GL10.gl_TEXTURE_ENV,GL10.gl_TEXTURE_ENV MODE,…);

    ... 在生成某些纹理时设置为GL_REPLACE,但从未设置为GL_COMBINE

        2
  •  0
  •   ryanm    14 年前

    是否已启用GL_BLEND? 退房 glBlendFunc . 我通常使用glBlendFunc(SRC_ALPHA,ONE_MINUS_SRC_ALPHA)