Okay I'm having problems implementing a camera in OpenGL. The translations are easy as crap, I just can't get rotation to work.

I could get it to work if I specified everything in global coordinates, but I want to define my meshes in local coordinates and then translate them to where they need to be.

I have heard of quaternions before when people ask similiar questions, would they help? The only thing I know about them is they have something to do with the complex number system.