OpenGL ES 1.x开启雾效后透明纹理显示异常问题求助
问题:OpenGL ES 1.x开启雾效时透明纹理显示异常
我有几款基于OpenGL ES 1.x开发的老旧Android应用,为适配新设备需在Google Play更新。完成废弃代码等必要更新后,发现开启雾效时带透明通道的纹理显示异常——透明区域隐约可见;关闭雾效则恢复正常。该应用此前部署后多年测试均无此问题,显然是当前环境变化导致的异常,现寻求熟悉OpenGL ES 1.x的技术人士协助解决。
以下是雾效设置及绘制代码:
gl.glFogf(GL10.GL_FOG_MODE, GL10.GL_LINEAR); gl.glHint(GL10.GL_FOG_HINT, GL10.GL_NICEST); gl.glFogf(GL10.GL_FOG_START, startZ); gl.glFogf(GL10.GL_FOG_END, endZ); gl.glFogfv(GL10.GL_FOG_COLOR, fColor, 0); gl.glEnable(GL10.GL_FOG); gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA); super.drawSprites(gl); gl.glDisable(GL10.GL_FOG);
开启雾效时的异常渲染效果图:
内容的提问来源于stack exchange,提问作者cmbellman
相关产品推荐
相关产品推荐

