From 12f1eb926d7e8f6dd950c007c40bbc80597faf23 Mon Sep 17 00:00:00 2001 From: Themaister Date: Tue, 23 Oct 2012 08:28:02 +0200 Subject: [PATCH] Add warning when FBO textures are resized. --- gfx/gl.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gfx/gl.c b/gfx/gl.c index 87eca440f4..da756a34f3 100644 --- a/gfx/gl.c +++ b/gfx/gl.c @@ -398,8 +398,11 @@ static void gl_compute_fbo_geometry(gl_t *gl, unsigned width, unsigned height, unsigned last_height = height; unsigned last_max_width = gl->tex_w; unsigned last_max_height = gl->tex_h; - GLint max_size; + + GLint max_size = 0; glGetIntegerv(GL_MAX_TEXTURE_SIZE, &max_size); + bool size_modified = false; + // Calculate viewports for FBOs. for (int i = 0; i < gl->fbo_pass; i++) { @@ -443,24 +446,31 @@ static void gl_compute_fbo_geometry(gl_t *gl, unsigned width, unsigned height, if (gl->fbo_rect[i].img_width > max_size) { + size_modified = true; gl->fbo_rect[i].img_width = max_size; } if (gl->fbo_rect[i].img_height > max_size) { + size_modified = true; gl->fbo_rect[i].img_height = max_size; } if (gl->fbo_rect[i].max_img_width > max_size) { + size_modified = true; gl->fbo_rect[i].max_img_width = max_size; } if (gl->fbo_rect[i].max_img_height > max_size) { + size_modified = true; gl->fbo_rect[i].max_img_height = max_size; } + if (size_modified) + RARCH_WARN("FBO textures exceeded maximum size of GPU (%ux%u). Resizing to fit.\n", max_size, max_size); + last_width = gl->fbo_rect[i].img_width; last_height = gl->fbo_rect[i].img_height; last_max_width = gl->fbo_rect[i].max_img_width;