Moving in 3d world

How can I make a “Descent”-like movement in my app? In other words, the arrow keys allow you to turn anywhere and other keys (‘q’ and ‘a’, or ‘a’ and ‘z’) make you fly in the direction you are looking. I had a little success doing my own vector manipulation (I’m so bad at OpenGL that I tried to make these things by hand), but sooner or later, I start rotating around the wrong axis…
Does anybody have a link to help me or has done something similar?

You can learn from opengl tutorials at www.gametutorials.com

Originally posted by yuu:

…but sooner or later, I start rotating around the wrong axis…

It’s called “gimbal lock” and it is the result of using “euler angles” to keep track of orientation. Do a search on these terms and you will find plenty of info.

Duh, I thought it was easier… Back to study… Maybe I give up.