Я пытаюсь перемещать автомобиль по сцене с помощью клавиш со стрелками. Я могу вращать транспортное средство вокруг себя, используя клавиши влево/вправо, но когда я пытаюсь двигаться вперед/назад, оно следует только одной оси, независимо от того, в какую сторону обращено лицо транспортного средства.
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
на клавишах вверх/вниз. Насколько я понимаю, причина, по которой мой объект перемещается по одной оси, заключается в том, что я перевожу только на movement
по оси x. Как отследить, куда обращена передняя часть моего автомобиля при повороте, и двигаться «вперед» в этом направлении?