||Programmers writing in the OpenGL Shading Language (GLSL) today rely on printf-style debugging methods and IDEs that set up test environments. However, as shaders get more complex, traditional step-through debugging on shaders running in their intended application becomes more useful.|
This paper describes a rewriting method that enables step-through debugging on GLSL shaders that are running in the user's program. Full-screen debugging is used first to identify interesting pixels, then individual pixels are stepped through to completely understand their behavior. This rewriting method can be made transparent to the user, and serves as an alternative to planned library support.