From 29d29df4f043aecf7711e956da5076456241d68f Mon Sep 17 00:00:00 2001 From: oy Date: Sun, 27 Jun 2010 13:12:00 +0200 Subject: fixed screenshot bug. Closes #144 --- src/engine/client/graphics.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/engine/client/graphics.cpp b/src/engine/client/graphics.cpp index e2f4ae4c..bf3f42ea 100644 --- a/src/engine/client/graphics.cpp +++ b/src/engine/client/graphics.cpp @@ -422,7 +422,11 @@ void CGraphics_OpenGL::ScreenshotDirect(const char *pFilename) int h = m_ScreenHeight; unsigned char *pPixelData = (unsigned char *)mem_alloc(w*(h+1)*3, 1); unsigned char *pTempRow = pPixelData+w*h*3; + GLint Alignment; + glGetIntegerv(GL_PACK_ALIGNMENT, &Alignment); + glPixelStorei(GL_PACK_ALIGNMENT, 1); glReadPixels(0,0, w, h, GL_RGB, GL_UNSIGNED_BYTE, pPixelData); + glPixelStorei(GL_PACK_ALIGNMENT, Alignment); // flip the pixel because opengl works from bottom left corner for(y = 0; y < h/2; y++) -- cgit 1.4.1