From: Steinar H. Gunderson Date: Sun, 23 Mar 2014 11:41:46 +0000 (+0100) Subject: Merge branch 'epoxy' of ssh://pannekake.samfundet.no/srv/git.sesse.net/www/movit... X-Git-Tag: 1.1~12^2~2 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=34036d849937f22c0addfcba44f65207c96deddc;hp=f332ac28f6a5255a6908c29124589148a8a5b2c5;p=movit Merge branch 'epoxy' of ssh://pannekake.samfundet.no/srv/git.sesse.net/www/movit into epoxy --- diff --git a/demo.cpp b/demo.cpp index c9b46ea..ba96291 100644 --- a/demo.cpp +++ b/demo.cpp @@ -191,6 +191,7 @@ int main(int argc, char **argv) SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); #ifdef HAVE_SDL2 + // SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS, SDL_GL_CONTEXT_DEBUG_FLAG); SDL_Window *window = SDL_CreateWindow("OpenGL window", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, diff --git a/gtest_sdl_main.cpp b/gtest_sdl_main.cpp index cd68777..90a929e 100644 --- a/gtest_sdl_main.cpp +++ b/gtest_sdl_main.cpp @@ -34,6 +34,10 @@ int main(int argc, char **argv) { // SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE); // SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3); // SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 2); + + // See also init.cpp for how to enable debugging. +// SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS, SDL_GL_CONTEXT_DEBUG_FLAG); + SDL_Window *window = SDL_CreateWindow("OpenGL window for unit test", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, diff --git a/init.cpp b/init.cpp index 4b8c970..c37614e 100644 --- a/init.cpp +++ b/init.cpp @@ -359,6 +359,17 @@ double get_glsl_version() return glsl_version; } +void APIENTRY debug_callback(GLenum source, + GLenum type, + GLuint id, + GLenum severity, + GLsizei length, + const char *message, + const void *userParam) +{ + printf("Debug: %s\n", message); +} + } // namespace bool init_movit(const string& data_directory, MovitDebugLevel debug_level) @@ -375,6 +386,12 @@ bool init_movit(const string& data_directory, MovitDebugLevel debug_level) glPixelStorei(GL_UNPACK_ALIGNMENT, 1); glDisable(GL_DITHER); + // You can turn this on if you want detailed debug messages from the driver. + // You should probably also ask for a debug context (see gtest_sdl_main.cpp), + // or you might not get much data back. + // glDebugMessageCallbackARB(callback, NULL); + // glDebugMessageControlARB(GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, 0, 0, GL_TRUE); + if (!check_extensions()) { return false; }