我正在尝试使用箭头键在场景周围移动车辆。我可以使用左/右键旋转车辆,但是当我尝试向前/向后移动时,无论车辆面部朝向哪个方向,它都只能沿着单个轴线旋转。OpenGL:在3D场景中移动
glPushMatrix();
// movement
glTranslatef(movement, 0.0, 0.0);
// turning
glTranslatef(base, 0.0, 0.0);
glRotatef(turnAngle, 0.0, 1.0, 0.0);
glTranslatef(-base, 0.0, 0.0);
drawCar();
glPopMatrix();
目前,我只递增或递减movement
上/下键。据我所知,我的对象在单一轴上移动的原因是因为我只在x轴上翻译了movement
。如何在转弯时跟踪我的车辆前方所朝向的位置,并朝这个方向向前移动?
可能重复[OpenGL - 旋转不工作](https://stackoverflow.com/questions/40094742/opengl-rotation-not-working) – Spektre