salut voici une partie de mon code pour me déplacer dans un espace 3D
je cherche le moyen d'avancer(SDLK_UP) dans le sens de la rotation choisi(SDLK_x ou SDLK_w) comment faire

pour l'instant quand je fais une rotation en avançant en même temps, j'avance de travers

merci

GLfloat a=8.0f;
GLfloat b=0.0f;
GLfloat c=0.0f;
GLfloat d=0.0f;
gluLookAt(0.0,c,1.1,0.0,0.0,0.0,0.0,1.0,0.0);
// eye // center // up //
glRotatef(d,0.0,1.0f,0.0f);
glTranslatef( b,-8.0,a);
glBegin(GL_QUADS);
glTexCoord2f(1.0,1.0);glVertex3f(-32.5f,0.0f,-40.0f);//devant gauche
glTexCoord2f(1.0,0.0);glVertex3f(-32.5f,0.0f,+40.0f);//arrière gauche
glTexCoord2f(0.0,0.0);glVertex3f(+32.5f,0.0f,+40.0f);//arrière droit
glTexCoord2f(0.0,1.0);glVertex3f(+32.5f,0.0f,-40.0f);//devant droit
glEnd();
if(Key(SDLK_LEFT))b+=0.1f;//translation gauche
if(Key(SDLK_RIGHT))b-=0.1f;//translation droite
if(Key(SDLK_UP))a+=0.1f;//avant
if(Key(SDLK_DOWN))a-=0.1f;//arrière
if(Key(SDLK_a))c+=0.01f;//regarde en bas
if(Key(SDLK_q))c-=0.01f;//regarde en haut
if(Key(SDLK_x))d+=0.1f;//rotation à droite
if(Key(SDLK_w))d-=0.1f;//rotation à gauche