我将相机放在 3D 立方体内 -
public void display(GLAutoDrawable drawable) {
...
glu.gluLookAt(eyeX, eyeY, eyeZ, centerX, centerY, centerZ, upX, upY, upZ);
...
}
看起来像那样-(每种颜色-侧锁)-
现在我试图 centerX, centerY, centerZ
围绕 X 轴旋转和相机看(三个) - 根据这个旋转公式 -
它运行良好,直到它达到 Z 值变为负值的状态 - 之后相机的外观开始旋转到 X 轴的另一侧。
我向您展示(centerX,centerY,centerZ)
了此错误范围内的值-
1.0 -1.2817129 0.59767246 //ok
1.0 -1.3289262 0.4836895 // ok
1.0 -1.3660256 0.36602536 //ok
1.0 -1.3927287 0.24557555 // ok
1.0 -1.4088323 0.12325676 //ok
1.0 -1.4142138 -9.784749E-8 // ok for last time
1.0 -1.4088323 -0.12325695 // rotate to other side of X
1.0 -1.3927287 -0.24557574 // so on ...
你建议我如何解决这个问题并让它旋转 360 度?
编辑:
(upX,upY,upZ)
在这种情况下也应该通过旋转吗?