This is a stupid question, but the only rotation I’ve ever done in OpenGL is with glRotate. The problem is, I represent orientation of my models with vectors (forward, left, up) as its local vectors of the same name. I don’t represent the model as angles around the world vectors. Without having to convert my vectors to angles around (1,0,0), (0,1,0) and (0,0,1), how can I rotate my model with its vectors?

What I’ve tried is to get the model view matrix, multiply it by my transformation matrix (position and my up, left and forward vectors) and then set the matrix. I get strange results through this as I move the camera, the model moves around. I cannot pass in my orientation vectors into glRotate either as this does not represent rotation without an angle as a parameter.

What would be the best way to do this, sample code or a link or just whatever info you can tell me would be greatly appreciated. Thanks!