Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

OpenGL debug or verbose information to console

Tags:

opengl

Is there some sort of debug mode that OpenGL can be run in where it outputs information to a console? I have an app the work fine on many machines, but it fails miserably on the one machine that really matters. I don't have direct access to that machine, so I am trying to figure out how it is failing. Currently I see no output in the console. Note that the application was originally a windows app without a console and I switched it to console via the project properties. Also if it matters some objects don't display and another is stuck and doesn't animate - which doesn't make any sense to me.

like image 483
Solx Avatar asked Jul 23 '11 14:07

Solx


1 Answers

Not, not really. You would have to write a hook for OpenGL and record all calls it does (which is what tools like gDEBugger do) if you really want some verbose output, but that requires quite a bit of work (you can use something like GLIntercept for that.) From personal experience: The easiest will be probably to get access to the machine in question and run gDEBugger there ... or get an equivalent machine so you can reproduce the error with a graphics debugger attached.

Alternatively, you can try to use the ARB_debug_output extension which -- in theory -- should provide you with some more output. In practice, all you get is a glGetError call after each OpenGL API call, which might be good enough for your use case (i.e. you just do something which breaks the GL state.) In order to use the debug output extension, you must modify your application to create a debug context.

like image 194
Anteru Avatar answered Oct 04 '22 02:10

Anteru