【发布时间】:2012-03-15 17:30:16
【问题描述】:
我有一个init() 方法,我正在尝试创建一个Perspective 渲染。下面是我到目前为止的代码,但我传递给gluPerspective(fovy, aspect, zNear, zFar) 的数字是错误的。我觉得fovy是视野(60度),aspect是纵横比(宽/高),但不知道zNear和zFar是什么。
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();
}
【问题讨论】:
-
您阅读手册页了吗? opengl.org/sdk/docs/man/xhtml/gluPerspective.xml 。此外,您正在对方面进行整数除法,您需要进行浮点除法,否则会将 500/300 舍入为 1。 (500.f/300.f)
标签: java opengl jogl perspective perspectivecamera