Add warning when FBO textures are resized.

This commit is contained in:
Themaister 2012-10-23 08:28:02 +02:00
parent 077317d94e
commit 12f1eb926d

View File

@ -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;