android - android中的opengl es透明雾

标签 android opengl-es colors transparency

我想知道为什么当我将颜色 alpha 设置为 0 时,我在 android 手机上的 opengl es 中使用的雾不透明。我将背景设置为透明,它工作正常,并且 Color 类或 toFloatBuffer()方法对我的网格工作正常,但是当我将雾颜色设置为透明时,这个事实将被忽略。这是我在渲染器的 onSurfaceCreated() 方法中用于雾化的基本代码:

gl.glFogf(GL10.GL_FOG_MODE, GL10.GL_LINEAR);
gl.glFogf(GL10.GL_FOG_START, 4.0f);
gl.glFogf(GL10.GL_FOG_END, 10.0f);
gl.glFogfv(GL10.GL_FOG_COLOR, new Color(0,0,0,0).toFloatBuffer());
gl.glEnable(GL10.GL_FOG);

最佳答案

这是预期的行为。 OpenGL 和 OpenGL ES 中的固定功能雾仅更改 fragment 的最终 R、G 和 B 分量。 A 分量保持不变(即 GL_FOG_COLOR 的 A 分量未使用)。

关于android - android中的opengl es透明雾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2889821/

相关文章:

带 GPS 和 GPRS 的 Android 15 天

php - Wordpress 中的标签颜色不同?

java - Android 中 Realm 查询返回不完整的结果集

android - 无法解决:com.android.support:cardview-v7:26.0.0 android

java - 从 OpenGL ES 1.0 切换到 2.0

iPhone 4 支持 MRT 或多渲染目标 (opengl es)?

colors - Sass 将字符串转换为颜色

swift - 快速获取需要与另一种颜色合成的颜色以得到目标颜色

Android 不抓取新的 json 文件

opengl - glVertexAttribPointer 和 glVertexAttribFormat : What's the difference?