i guess the problem is the FBO itself, since glReadPixels on the main framebuffer produced correct results.
using glPixelStore(GL_PACK_ALIGNMENT, 1); did not yield better or different results in any way…
another question, what is the best way to render offscreen scenes?
I tried to do it but it seems the scene is not rendering.
I tried once to initialize OpenGL using HWND - HDC & wglCurrent, and once initialize using GLUT
the best way is actually FBO. there are also pbuffers but they are platform dependend in implementation and somewhat painful to implement. Try some samples on your machine see how the work and how they do it.