我正在使用 OpenGL ES 2.0 教程作为基础在 Android 平台上使用 OpenGL。有问题的代码是:
public void onSurfaceChanged( GL10 unused, int width, int height )
{ GLES20.glViewport( 0, 0, width, height );
float ratio = (float) width / height;
Matrix.frustumM( mProjMatrix, 0, -ratio, ratio, -1, 1, 1, 9.9999f );
Matrix.setLookAtM( mVMatrix, 0, 0.0f, 0.0f, -1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f );
muMVPMatrixHandle = GLES20.glGetUniformLocation( mProgram, "uMVPMatrix" );
}
特别是 frustumM 的“far”参数。只要该参数为 10,图像(三角形)就不会出现。任何其他值都可以。为什么?
我已经做了相当多的阅读 - 一切都无济于事。甚至我的朋友(又名 Google)也无法帮助我。
提前致谢。