OpenGL雾与OpenGL ES雾

Cur*_*ain 9 opengl opengl-es

我有一个问题,即雾在使用OpenGL的桌面程序(PC)上工作,但同样的雾不能像在Android设备上那样工作(使用OpenGL ES).

代码完全相同,看起来像这样:

// OpenGL ES Init
gl.glClearColor(0.5f, 0.5f, 0.5f, 1.0f);
float fogColor[] = {0.5, 0.5, 0.5, 1.0};
// Fog color to mFogBuffer...
gl.glEnable(GL10.GL_FOG);
gl.glFogfv(GL10.GL_FOG_COLOR, mFogBuffer);
gl.glFogf(GL10.GL_FOG_DENSITY, 0.04f);

// OpenGL Init
glClearColor(0.5, 0.5, 0.5, 1.0);
float fogColor[] = {0.5, 0.5, 0.5, 1.0};
glEnable(GL_FOG);
glFogfv(GL_FOG_COLOR, fogColor);
glFogf(GL_FOG_DENSITY, 0.04f);
Run Code Online (Sandbox Code Playgroud)

但是我无法在我的Android设备上使OpenGL雾完全相同.我测试了glShadeModel()属性等等.

应该雾的区域是完全白色的,它是一个基本的四边形(由三角形构建).我做了一些gluLookAt()改造,但它不应该影响这种雾.

有任何想法吗?

gen*_*ult 2

尝试glHint(GL_FOG_HINT, GL_NICEST)