From 7034b2369cfd9eb6639185a8021ba6bad3731e7e Mon Sep 17 00:00:00 2001 From: Tamir Atias Date: Tue, 19 Feb 2013 02:42:37 +0200 Subject: [PATCH] [Fix] Screenshots were saved as RGBA. Bad idea. --- src/opengl.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/opengl.c b/src/opengl.c index 7f8df98..db47d8b 100644 --- a/src/opengl.c +++ b/src/opengl.c @@ -135,14 +135,14 @@ static uint8_t* SDL_MapTrans(SDL_Surface* s) { // Take a screenshot. void gl_screenshot(const char* filename) { SDL_Surface* screen = SDL_GetVideoSurface(); - unsigned rowbytes = screen->w * 4; + unsigned rowbytes = screen->w * 3; unsigned char screenbuf[screen->h][rowbytes], *rows[screen->h]; int i; - glReadPixels(0, 0, screen->w, screen->h, GL_RGBA, GL_UNSIGNED_BYTE, screenbuf); + glReadPixels(0, 0, screen->w, screen->h, GL_RGB, GL_UNSIGNED_BYTE, screenbuf); for(i = 0; i < screen->h; i++) rows[i] = screenbuf[screen->h - i - 1]; - write_png(filename, rows, screen->w, screen->h, PNG_COLOR_TYPE_RGBA, 8); + write_png(filename, rows, screen->w, screen->h, PNG_COLOR_TYPE_RGB, 8); } // ================