我有一个场景,基本上是一个正方形的地板,尺寸为 15x15(坐标为 (0,0,0) (0,0,15) (15,0,15) (15,0,0) 的四边形)。
我已将场景中心设置为 (7.5,0,7.5)。问题是我无法弄清楚如何围绕场景中心水平旋转相机(也就是让相机围绕场景中心进行 360 度水平旋转)。我知道你需要对 sin 和 cos 做一些事情,但不知道具体是什么。
这是代码(纯C):
//set camera position
//camera height is 17
GLfloat camx=0, camy=17, camz=0;
//set center of scene
GLfloat xref=7.5, yref=0, zref=7.5;
gluLookAt(camx, camy, camz, xref, yref, zref, 0, 1, 0);
//projection is standard gluPerspective, nothing special
gluPerspective(45, (GLdouble)width/(GLdouble)height, 1, 1000);