嘿,我正在转换我的项目,以便它使用正交投影,因为我被告知它更简单,更适合2D游戏。我不知道我真的知道如何测量剪裁平面的屏幕参数。我可以硬编码数字,但是当屏幕放入横向时会导致拉伸。我甚至不知道裁剪平面是否要固定到屏幕的边缘,但似乎是这种情况,因为我一直在尝试不同的数字,数字越大,绘制的形状越小。这导致我假设我输入的数字只是轴的极端。
我的假设是否正确?
避免拉伸的最佳方法是什么?
什么命令最适合查找屏幕大小?
答案 0 :(得分:0)
啊哈得到它=)
刚才意识到我的onSurfaceChanged方法看起来像这样:
@Override
public void onSurfaceChanged(GL10 gl, int width, int height) {
gl.glViewport(0, 0, width, height);
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glLoadIdentity();
GLU.gluOrtho2D(gl, -width, width , -height, height);
gl.glMatrixMode(GL10.GL_MODELVIEW);
gl.glLoadIdentity();
gl.glViewPort找到屏幕尺寸,经过一段时间的播放后,我终于得到了一个中心对齐的图像,当使用线条改变方向时没有拉伸
GLU.gluOrtho2D(gl, -width, width , -height, height);
有人纠正我,如果有更好的方法来实现这个=)