我正在使用以下方式旋转相机(当相机位于(0,0,0)时):
glRotatef(x_camera_angle, 1.0, 0.0, 0.0);
glRotatef(y_camera_angle, 0.0, 1.0, 0.0);
我希望将相机朝着它的方向移动。例如,我想将摄像机向右移动5个单元,向前移动3个单元。怎么办呢?
我知道那里有很多信息,但我还没有找到一个令人满意的简单答案。
任何帮助都将受到高度赞赏。
答案 0 :(得分:1)
最好的方法可能是在旋转前翻译:
glTranslatef(5, 0, 3);
glRotatef(x_camera_angle, 1.0, 0.0, 0.0);
glRotatef(y_camera_angle, 0.0, 1.0, 0.0);