我正在使用 OpenGL 制作赛车游戏(只是一个小项目),但在尝试让我的汽车跟随相机视图时遇到问题。
当相机向前和/或向后移动时,让它跟随相机并不难,但是当我旋转相机(向右或向左看)时,汽车仍然静止。我的意思是,它仍然向前和向后移动,但它不在相机前面(它在侧面)。
这是我的代码(我尝试实现它的部分):
void updateCam() {
    gluLookAt(posX,posY + 0.025 * std::abs(sin(headPosAux*PI/180)),posZ,
        posX + sin(roty*PI/180),posY + 0.025 * std::abs(sin(headPosAux*PI/180)) + cos(rotx*PI/180),posZ -cos(roty*PI/180),
        0.0,1.0,0.0);
    listenerPos[0] = posX;
    listenerPos[1] = posY;
    listenerPos[2] = posZ;
    source0Pos[0] = posX;
    source0Pos[1] = posY;
    source0Pos[2] = posZ;
    GLfloat distD;
    distD = posZ - 3.3;
    //makes the car "follow" the camera
    modelPOR.Translate(posX,posY,distD);
}