我正在尝试为我的场景添加雾,但是远离相机的场景变得更加模糊,雾似乎完全取决于高度。以下是演示此问题的屏幕截图:
http://gyazo.com/ab60dfd1d85a3a5533153f09ef6a059e.png
我使用以下代码初始化雾:
gl.glFogx( GL10.GL_FOG_MODE, GL10.GL_LINEAR );
gl.glFogfv( GL10.GL_FOG_COLOR, new float[] { 1.0f, 1.0f, 1.0f, 1.0f }, 0 );
gl.glFogf( GL10.GL_FOG_DENSITY, 0.35f );
gl.glHint( GL10.GL_FOG_HINT, GL10.GL_DONT_CARE );
gl.glFogf( GL10.GL_FOG_START, 10.0f );
gl.glFogf( GL10.GL_FOG_END, 15.0f );
gl.glEnable( GL10.GL_FOG );
这就是我的投影设置方式:
gl.glMatrixMode( GL10.GL_PROJECTION );
gl.glLoadIdentity();
GLU.gluPerspective( gl, 90.0f, _w / _h, 0.1f, 15.0f );
GLU.gluLookAt( gl, _player.position.x, _player.position.y, _player.position.z, centerX, centerY, centerZ, 0.0f, 0.0f, 1.0f );
知道什么是错的吗?
答案 0 :(得分:1)
喔。您需要将gluLookAt用于GL_MODELVIEW矩阵而不是GL_PROJECTION。真是太棒了。
答案 1 :(得分:1)
正如您所说,您需要为相机使用GL_MODELVIEW。