在OpenGL中,我试图围绕某一点旋转相机,相机与该点的距离为r,并且当它旋转时,朝向该点。换句话说,我希望相机沿着以半径r为圆心的圆周移动,且相机在圆周上的任意一点都面向圆心。
假设在3D空间中,该圆的中心为(3,0,3);
我已经尝试过:
假设在3D空间中,该圆的中心为(3,0,3);
我已经尝试过:
// move to center of circle
glTranslatef(-3, 0, -3)
// move a distance away from the circle
glTranslatef(0, 0, r);
// rotate along the y "up" axis
glRotatef(CameraAngle, 0, 1, 0);
其中 CameraAngle 是绕圆移动的角度。
我的最终目标是相机仍然围绕原点旋转,而不是圆心。有人能帮我解决这个问题吗?谢谢!