/GLSL-Debugger

GLSL source level debugger.

Primary LanguageC++OtherNOASSERTION

GLSL-Debugger

Build Status

GLSL source level debugger.

This is the Open Source public release of the project originally known as glslDevil ( http://www.vis.uni-stuttgart.de/glsldevil/ ), by Thomas Klein, Magnus Strengert and Thomas Ertl.

Status and important notes

There is currently no active development and no active maintenance.

Please expect problems and expect that you will need to touch some code in order to fix them. We are around to help though. Historically, the source code became open source after being beginning its life as part of a university project. After that, the community integrated CMake, made the project build on Windows, current Linux systems, partially on OSX and integrated Mesa as GLSLCompiler. Most of the development was done on Linux. Hence, Linux is probably the best choice in terms of debugger functionality and build difficulties. If you experience any issues, please check the github issue tracker and file a new ticket if need be.

Building

The only available build system is cmake. Example build steps:

mkdir Build && cd Build
cmake ..\
make

Cmake may generate files for big number of make utilities, please check the cmake documentation for further information.

It is recommended to do out-of-source build.

Windows building requires additional dependencies installed:

On osx build was not tested, but cmake files may be used.

GLSL support

Old implementation of GLSLCompiler support GLSL up to 1.20. Support of newer versions is avaliable by using mesa-based GLSLCompiler implementation. To enable it, cmake option USE_MESA must be set. Use -DUSE_MESA=ON as argument to cmake command to do so. Mesa currently support GLSL up to version 3.30, it will be extended in future. Please note that mesa-based compiler is disabled by default yet and consider it as alternative, that may have bugs. It will replace original compiler after some testing.

Also new compiler can be build with tests by passing TESTS=ON option to cmake.

Short-term goals

We need to test the build system and the source code more thoroughly. Hence, bugfixing and testing should be a top priority for now.

Long-term goals

  • Replace Windows Detours dependency with apiTrace, glIntercept or EasyHook. Replaced with mhook.
  • Check cmake-to-VS generation and fix it if needed.
  • Support OSX.
  • Improve GLSL language grammar support to incorporate newer dialects including switch/case.
  • Support OpenGL contexts for newer versions of OpenGL.
  • Decouple the debugger logic from the UI (allow remote debugging)

Contribute

We are looking for people who have an interest in this tool's capability to bring this project back to life and move it forward, so get in touch, check out the code, try it out, fix some things and push some changes!

Discussion is at glsl-debugger-development@googlegroups.com https://groups.google.com/forum/?fromgroups#!forum/glsl-debugger-development

IRC channel at freenode: #glsl-debugger