我有一個init()
方法,我試圖創建一個Perspective
呈現。下面是我到目前爲止的代碼,但我傳遞給gluPerspective(fovy, aspect, zNear, zFar)
的數字是錯誤的。我認爲fovy
是視場(60度),而aspect
是縱橫比(寬/高),但我不知道zNear
和zFar
是什麼。如何在jogl中使用gluPerspective()?
public void init(GLAutoDrawable gld) {
//We will use the default ViewPort
GL gl = gld.getGL();
glu = new GLU();
gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
glu.gluLookAt(
25, 15, 0, // eye
25, 15, 30, // at
0, 1, 0 // up
);
// Set up camera for Orthographic projection:
gl.glMatrixMode(GL.GL_PROJECTION);
gl.glLoadIdentity();
glu.gluPerspective(60, 500/300, 0.0, 60.0);
gl.glMatrixMode(GL.GL_MODELVIEW);
gl.glLoadIdentity();
}
您是否閱讀過手冊頁? http://www.opengl.org/sdk/docs/man/xhtml/gluPerspective.xml。此外,你正在做方面的整數除法,你需要做浮動部分,否則它會圍繞500/300到1.(500.f/300.f) – Tim 2012-03-15 17:35:26