这可能是由您的相机在您的视图矩阵中的位置引起的。回忆一下 OpenGL 中坐标系的方向:
- +x 点向右
- +y 向上
- +z 指向屏幕外
- (0,0,0) 在屏幕中央
要设置相机:
Matrix.setLookAtM(mVMatrix, 0, 0, 0, 2, 0f, 0f, 0f, 0f, 1.0f, 0f);
// My camera is located at (0,0,2),
// it's looking toward (0,0,0)
// its top is pointing along (0,1,0) aka. Y-axis.
如果我的矩形位于 XY 平面上的某个位置,即 Z 坐标为 0,那么我的相机在 Z 轴正方向上距它 2 个单位。从这个位置查看矩形使它看起来比预期的要小。要使矩形看起来更大,请尝试通过更改其在视图矩阵中的位置来将相机移近它。我将 Z 坐标从下面的 2 更改为 1:
Matrix.setLookAtM(mVMatrix, 0, 0, 0, 1, 0f, 0f, 0f, 0f, 1.0f, 0f);
// My camera is located at (0,0,1),
// it's looking toward (0,0,0)
// its top is pointing along (0,1,0) aka. Y-axis.