【发布时间】:2015-04-05 00:01:45
【问题描述】:
我目前正在处理我的实体移动,但我注意到相机只有约 180 度的“视野”,并且不会转过这个位置。试图在它的阈值或其他东西之后转动,会使相机转动得很慢,并且需要很长时间才能返回。我希望能够 360 度旋转世界。这可能吗?我有一个简短的 gif 来演示
在 gif 结束时,很明显运动开始减速并停止。
如果有人可以帮助我解决这背后的数学问题,或者为什么会发生这种情况,我将不胜感激。我在网上找了一圈,没找到相关的。
case GLUT_KEY_LEFT:
base->camera->angle += 3.0f;
break;
case GLUT_KEY_RIGHT:
base->camera->angle -= 3.0f;
break;
camera->lookat->z = sin(camera->angle);
camera->lookat->x = cos(camera->angle);
gluLookAt(camera->position->getX(), camera->position->getY(), camera->position->getZ(),
camera->lookat->getX(), camera->lookat->getY(), camera->lookat->getZ(),
camera->up->getX(), camera->up->getY(), camera->up->getZ());//camera
【问题讨论】:
-
你如何转动相机?
-
您的摄像头位置是否在 (0,0,0)?