diff --git a/src/qt/qt_openglrenderer.cpp b/src/qt/qt_openglrenderer.cpp
index 2e8869c09..53d29f9a8 100644
--- a/src/qt/qt_openglrenderer.cpp
+++ b/src/qt/qt_openglrenderer.cpp
@@ -145,6 +145,24 @@ const char* fragment_shader_default_color_src =
" outColor.a = 1.0;\n"
"}\n";
+#ifdef ENABLE_OGL3_LOG
+int ogl3_do_log = ENABLE_OGL3_LOG;
+
+static void
+ogl3_log(const char *fmt, ...)
+{
+ va_list ap;
+
+ if (ogl3_do_log) {
+ va_start(ap, fmt);
+ ogl3_log_ex(fmt, ap);
+ va_end(ap);
+ }
+}
+#else
+# define ogl3_log(fmt, ...)
+#endif
+
static inline int
next_pow2(unsigned int n)
{
@@ -232,8 +250,8 @@ OpenGLRenderer::compile_shader(GLenum shader_type, const char *prepend, const ch
main_window->showMessage(MBX_ERROR | MBX_FATAL, tr("GLSL Error"), tr("Could not compile shader:\n\n%1").arg(log).replace("\n", "
"));
// wx_simple_messagebox("GLSL Error", "Could not compile shader:\n%s", log);
- pclog("Could not compile shader: %s\n", log);
- // pclog("Shader: %s\n", program);
+ ogl3_log("Could not compile shader: %s\n", log);
+ // ogl3_log("Shader: %s\n", program);
free(log);
return 0;
@@ -348,7 +366,7 @@ OpenGLRenderer::create_texture(struct shader_texture *tex)
tex->width = max_texture_size;
if (tex->height > max_texture_size)
tex->height = max_texture_size;
- pclog("Create texture with size %dx%d\n", tex->width, tex->height);
+ ogl3_log("Create texture with size %dx%d\n", tex->width, tex->height);
glw.glGenTextures(1, (GLuint *) &tex->id);
glw.glBindTexture(GL_TEXTURE_2D, tex->id);
glw.glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, tex->wrap_mode);
@@ -452,7 +470,7 @@ OpenGLRenderer::create_fbo(struct shader_fbo *fbo)
glw.glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, fbo->texture.id, 0);
if (glw.glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE)
- pclog("Could not create framebuffer!\n");
+ ogl3_log("Could not create framebuffer!\n");
glw.glBindFramebuffer(GL_FRAMEBUFFER, 0);
}
@@ -629,12 +647,12 @@ OpenGLRenderer::load_glslp(glsl_t *glsl, int num_shader, const char *f)
struct shader_lut_texture *tex = &gshader->lut_textures[i];
strcpy(tex->name, texture->name);
- pclog("Load texture %s...\n", file);
+ ogl3_log("Load texture %s...\n", file);
if (!load_texture(file, &tex->texture)) {
//QMessageBox::critical(main_window, tr("GLSL Error"), tr("Could not load texture: %s").arg(file));
main_window->showMessage(MBX_ERROR | MBX_FATAL, tr("GLSL Error"), tr("Could not load texture: %1").arg(file));
- pclog("Could not load texture %s!\n", file);
+ ogl3_log("Could not load texture %s!\n", file);
failed = 1;
break;
}
@@ -676,16 +694,16 @@ OpenGLRenderer::load_glslp(glsl_t *glsl, int num_shader, const char *f)
if (!strlen(pass->alias))
sprintf(pass->alias, "Pass %u", (i + 1));
- pclog("Creating pass %u (%s)\n", (i + 1), pass->alias);
- pclog("Loading shader %s...\n", shader->shader_fn);
+ ogl3_log("Creating pass %u (%s)\n", (i + 1), pass->alias);
+ ogl3_log("Loading shader %s...\n", shader->shader_fn);
if (!shader->shader_program) {
main_window->showMessage(MBX_ERROR | MBX_FATAL, tr("GLSL Error"), tr("Could not load shader: %1").arg(shader->shader_fn));
// wx_simple_messagebox("GLSL Error", "Could not load shader: %s", shader->shader_fn);
- pclog("Could not load shader %s\n", shader->shader_fn);
+ ogl3_log("Could not load shader %s\n", shader->shader_fn);
failed = 1;
break;
} else
- pclog("Shader %s loaded\n", shader->shader_fn);
+ ogl3_log("Shader %s loaded\n", shader->shader_fn);
failed = !compile_shader(GL_VERTEX_SHADER, "#define VERTEX\n#define PARAMETER_UNIFORM\n",
shader->shader_program, &pass->program.vertex_shader)
|| !compile_shader(GL_FRAGMENT_SHADER, "#define FRAGMENT\n#define PARAMETER_UNIFORM\n",
@@ -856,15 +874,15 @@ OpenGLRenderer::initialize()
glw.initializeOpenGLFunctions();
- pclog("OpenGL information: [%s] %s (%s)\n", glw.glGetString(GL_VENDOR), glw.glGetString(GL_RENDERER), glw.glGetString(GL_VERSION));
+ ogl3_log("OpenGL information: [%s] %s (%s)\n", glw.glGetString(GL_VENDOR), glw.glGetString(GL_RENDERER), glw.glGetString(GL_VERSION));
glsl_version[0] = glsl_version[1] = -1;
glw.glGetIntegerv(GL_MAJOR_VERSION, &glsl_version[0]);
glw.glGetIntegerv(GL_MINOR_VERSION, &glsl_version[1]);
if (glsl_version[0] < 3) {
throw opengl_init_error(tr("OpenGL version 3.0 or greater is required. Current GLSL version is %1.%2").arg(glsl_version[0]).arg(glsl_version[1]));
}
- pclog("Using OpenGL %s\n", glw.glGetString(GL_VERSION));
- pclog("Using Shading Language %s\n", glw.glGetString(GL_SHADING_LANGUAGE_VERSION));
+ ogl3_log("Using OpenGL %s\n", glw.glGetString(GL_VERSION));
+ ogl3_log("Using Shading Language %s\n", glw.glGetString(GL_SHADING_LANGUAGE_VERSION));
glslVersion = reinterpret_cast(glw.glGetString(GL_SHADING_LANGUAGE_VERSION));
glslVersion.truncate(4);
@@ -876,7 +894,7 @@ OpenGLRenderer::initialize()
glslVersion.append(" core");
glw.glGetIntegerv(GL_MAX_TEXTURE_SIZE, &max_texture_size);
- pclog("Max texture size: %dx%d\n", max_texture_size, max_texture_size);
+ ogl3_log("Max texture size: %dx%d\n", max_texture_size, max_texture_size);
glw.glEnable(GL_TEXTURE_2D);
@@ -1218,7 +1236,7 @@ OpenGLRenderer::render_pass(struct render_data *data)
int i;
GLuint texture_unit = 0;
- // pclog("pass %d: %gx%g, %gx%g -> %gx%g, %gx%g, %gx%g\n", num_pass, pass->state.input_size[0],
+ // ogl3_log("pass %d: %gx%g, %gx%g -> %gx%g, %gx%g, %gx%g\n", num_pass, pass->state.input_size[0],
// pass->state.input_size[1], pass->state.input_texture_size[0], pass->state.input_texture_size[1],
// pass->state.output_size[0], pass->state.output_size[1], pass->state.output_texture_size[0],
// pass->state.output_texture_size[1], output_size[0], output_size[1]);