Using OpenGL State History for Graphics Debugging

Bryce van Dyk, Christof Lutteroth, Gerald Weber, Burkhard Wünsche

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

To fulfill the unique debugging requirements of graphics programming, specialized tools are needed to aid in the debugging process. Modern graphics debuggers allow developers to inspect the current graphics state of a running application, and influence their control flow. However, they do not make maximum use of information about previous graphics states, despite the possible utility of this information in debugging. We propose GLDebug, an OpenGL debugger with novel features for using historical information to assist with graphics debugging. GLDebug provides the ability to capture and recall OpenGL state and function call information. Developers can retrace the graphics state history of OpenGL applications and compare different recorded states, which may come from different applications. State differences are made clearly visible, so that the source of state-based errors can be tracked down more easily. GLDebug was evaluated in a user study, with promising results: the participants found the tool helped them when working on four different OpenGL debugging tasks. All participants commented favorably on the support for tracking and analyzing state history. The results indicate that historical information is useful for graphics debugging, and that debuggers supporting such information can improve debugging efficacy.
Original languageEnglish
Title of host publicationProceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG)
Pages29-38
Number of pages10
Publication statusPublished - 2013

Fingerprint

Flow control

Cite this

van Dyk, B., Lutteroth, C., Weber, G., & Wünsche, B. (2013). Using OpenGL State History for Graphics Debugging. In Proceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG) (pp. 29-38)

Using OpenGL State History for Graphics Debugging. / van Dyk, Bryce; Lutteroth, Christof; Weber, Gerald; Wünsche, Burkhard.

Proceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG). 2013. p. 29-38.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

van Dyk, B, Lutteroth, C, Weber, G & Wünsche, B 2013, Using OpenGL State History for Graphics Debugging. in Proceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG). pp. 29-38.
van Dyk B, Lutteroth C, Weber G, Wünsche B. Using OpenGL State History for Graphics Debugging. In Proceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG). 2013. p. 29-38
van Dyk, Bryce ; Lutteroth, Christof ; Weber, Gerald ; Wünsche, Burkhard. / Using OpenGL State History for Graphics Debugging. Proceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG). 2013. pp. 29-38
@inproceedings{4d5efcef2f604030919e8f869f9731fa,
title = "Using OpenGL State History for Graphics Debugging",
abstract = "To fulfill the unique debugging requirements of graphics programming, specialized tools are needed to aid in the debugging process. Modern graphics debuggers allow developers to inspect the current graphics state of a running application, and influence their control flow. However, they do not make maximum use of information about previous graphics states, despite the possible utility of this information in debugging. We propose GLDebug, an OpenGL debugger with novel features for using historical information to assist with graphics debugging. GLDebug provides the ability to capture and recall OpenGL state and function call information. Developers can retrace the graphics state history of OpenGL applications and compare different recorded states, which may come from different applications. State differences are made clearly visible, so that the source of state-based errors can be tracked down more easily. GLDebug was evaluated in a user study, with promising results: the participants found the tool helped them when working on four different OpenGL debugging tasks. All participants commented favorably on the support for tracking and analyzing state history. The results indicate that historical information is useful for graphics debugging, and that debuggers supporting such information can improve debugging efficacy.",
author = "{van Dyk}, Bryce and Christof Lutteroth and Gerald Weber and Burkhard W{\"u}nsche",
year = "2013",
language = "English",
isbn = "9788086943756",
pages = "29--38",
booktitle = "Proceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG)",

}

TY - GEN

T1 - Using OpenGL State History for Graphics Debugging

AU - van Dyk, Bryce

AU - Lutteroth, Christof

AU - Weber, Gerald

AU - Wünsche, Burkhard

PY - 2013

Y1 - 2013

N2 - To fulfill the unique debugging requirements of graphics programming, specialized tools are needed to aid in the debugging process. Modern graphics debuggers allow developers to inspect the current graphics state of a running application, and influence their control flow. However, they do not make maximum use of information about previous graphics states, despite the possible utility of this information in debugging. We propose GLDebug, an OpenGL debugger with novel features for using historical information to assist with graphics debugging. GLDebug provides the ability to capture and recall OpenGL state and function call information. Developers can retrace the graphics state history of OpenGL applications and compare different recorded states, which may come from different applications. State differences are made clearly visible, so that the source of state-based errors can be tracked down more easily. GLDebug was evaluated in a user study, with promising results: the participants found the tool helped them when working on four different OpenGL debugging tasks. All participants commented favorably on the support for tracking and analyzing state history. The results indicate that historical information is useful for graphics debugging, and that debuggers supporting such information can improve debugging efficacy.

AB - To fulfill the unique debugging requirements of graphics programming, specialized tools are needed to aid in the debugging process. Modern graphics debuggers allow developers to inspect the current graphics state of a running application, and influence their control flow. However, they do not make maximum use of information about previous graphics states, despite the possible utility of this information in debugging. We propose GLDebug, an OpenGL debugger with novel features for using historical information to assist with graphics debugging. GLDebug provides the ability to capture and recall OpenGL state and function call information. Developers can retrace the graphics state history of OpenGL applications and compare different recorded states, which may come from different applications. State differences are made clearly visible, so that the source of state-based errors can be tracked down more easily. GLDebug was evaluated in a user study, with promising results: the participants found the tool helped them when working on four different OpenGL debugging tasks. All participants commented favorably on the support for tracking and analyzing state history. The results indicate that historical information is useful for graphics debugging, and that debuggers supporting such information can improve debugging efficacy.

M3 - Conference contribution

SN - 9788086943756

SP - 29

EP - 38

BT - Proceedings of the 21th International Conference on Computer Graphics, Visualisation and Computer Vision (WSCG)

ER -