【发布时间】:2014-04-30 04:01:18
【问题描述】:
我的 3D 项目中有一个相机,我正试图沿着 z 轴在世界各地平移。相机位于 (0.0, 50.0, -75.0) 处,目标为 (0.0, 1.0, 0.0)。我只是想让相机从第一个位置移动到与 (0.0, 50.0, 75.0) 相对的位置。
在我的构造函数中,我初始化了相机位置、目标和向上向量。
_camPos = glm::vec3(0.0f, 50.0f, -75.0f);
_target = glm::vec3(0.0f, 1.0f, 0.0f);
_up = glm::vec3(0.0f, 1.0f, 0.0f);
在我的 OnInit 函数中:
_viewMatrix = glm::lookAt(_camPos, _target, _up); // glm::mat4 _viewMatrix
在我的 OnRender 函数中:
_camPos.z += 0.05f;
相机的位置会更新,但在视觉上,相机会停留在同一个位置。 我的场景中确实有正在 OnRender 中更新的移动对象,但相机本身不会移动。
【问题讨论】: