A beta release of GLIntercept 1.0 is now out at:
A few things to note:
- This is more a maintainable release - new function entry points and some minor bug fixes.
- OpenGL3.0 + pure core profiles do not work correctly (will be fixed)
- New resource types like array textures, geometry shaders etc are not currently logged.
- No x64 bit program support.
- Nvidia’s multi threadded driver seems to issue an internal wglGetPixelFormat call on the first glGetError() after SwapBuffers. This internal call occurs on a different thread that does not have the main OpenGL conext - so it results in the OpenGL error:
“GL ERROR - Function wglGetPixelFormat generated error GL_INVALID_OPERATION”
for the first 23 times swap buffers is called.
To fix, disable the multi-threadded driver from the Nvidia control panel:
“Manage 3D settings -> Threadded Optimization -> Off”
or you can enable the GLIntercept option “ThreadChecking = True” which will report the extra wglGetPixelFormat call occuring on a different thread. (as well as some other wglDescribePixelFormat calls made by the driver)
I will probably do a few more betas before the final, so hopefully a few of the above features/fixes will make it in.
As there are so many other OpenGL loggers on Windows these days I will probably not do too many more updates. (and OpenGL is a hard API to write a debugger for)
Let me know of any bugs you encounter.