GLSL-Debugger is a tool for debugging OpenGL programs, featuring as simple OpenGL tracing as GLSL line-by-line debugging. By transparently instrumenting the host application it allows for debugging GLSL shaders in arbitrary OpenGL programs without the need to recompile or even having the source code of the host program available. The debug data is directly retrieved from the hardware pipeline and can be used for visual debugging and program analysis.
GLSL-Debugger is the Open Source fork of the project originally known as glslDevil, by Thomas Klein, Magnus Strengert and Thomas Ertl.
Please note the development status below and the long-term goals as some of the features are under development
Currently, we only provide source code for downloading. In the future we might be able to provide ready-to-use binaries. Please follow the building guide to compile the source code yourself.
GLSL-Debugger uses CMake as build system. CMake can generate
project files for various platforms and tool chains. Take a look at the
git submodule update --init --recursiveif you can't find it in your working directory.
CMake can handle out-of-source builds (OOS) and this is the recommended way to build GLSL-Debugger. Nevertheless, in-source builds are working as well if you are more comfortable with them. Assuming you've navigated to the project directory, the neccessary steps for building OOS on **nix & friends are:
mkdir ../build && cd ../build cmake ../GLSL-Debugger make
CMake can generate project files for numerous tool chains. On
windows, you can generate Visual Studio projects by selecting the
appropriate generator, e.g.
cmake -G "Visual Studio 9
2008". Please check the cmake
documentation for detailed information. OSX is currently not supported but
compiling the source code should work.
Development currently aims at fixing blocking bugs, reviving once working functionality and testing the debugger to work properly. Hence, the code base undergoes rather big modifications and you should expect to see bugs, dead code, planned but never implemented features and all other kinds of things typically seen on construction sites.
We are looking for people who have an interest in this tool's capabilities and which like to bring this project back to life and push it forward. Get in touch with us, check out the code, experiment with it, fix some things and push some changes!