我有一个程序根据GL.GL_VERTEX_ARRAY
的集合绘制3D形状,最后在display()
方法中绘制 -
public void display(GLAutoDrawable drawable) {
gl.glDrawArrays(GL.GL_QUADS, 0, 24);
}
到目前为止它工作正常并且我在输出上得到了所需的形状,但是如果我在gl.glScalef(20, 20, 40);
之前添加gl.glDrawArrays()
形状停止出现并且我得到空白输出 -
public void display(GLAutoDrawable drawable) {
gl.glScalef(20, 20, 40);
gl.glDrawArrays(GL.GL_QUADS, 0, 24);
}
如何正确缩放输出?
修改
通过之前添加gl.glLoadIdentity()
来修复。
答案 0 :(得分:1)
完全不清楚代码的其余部分会做什么,但仅从显示的片段中,人们可能怀疑你从未重置矩阵,并且缩放在几帧的过程中累积。