【发布时间】:2018-03-18 20:59:41
【问题描述】:
我正在尝试使用 gluLookAt 在 OpenGL 固定功能管道中实现 FPS 风格的相机。鼠标应该在任何给定方向上旋转相机。
我存储相机的位置:
float xP;
float yP;
float zP;
我存储查看坐标:
float xL;
float yL;
float zL;
向上向量始终设置为(0,1,0)
我使用这台相机如下:gluLookAt(xP,yP,zP, xL,yL,zL, 0,1,0);
我希望我的相机能够沿偏航和俯仰移动,但不能滚动。
在每一帧之后,我将鼠标的坐标重置到屏幕的中间。由此我可以得到 x 和 y 的变化。
如何转换每帧后 x 和 y 的变化,以适当更改观察坐标(xL、yL、zL)以旋转相机?
【问题讨论】:
-
看,向上和你的右/左矢量应该相互垂直