Debugging tools

pyglet includes a number of debug paths that can be enabled during or before application startup. These were primarily developed to aid in debugging pyglet itself, however some of them may also prove useful for understanding and debugging pyglet applications.

Each debug option is a key in the pyglet.options dictionary. Options can be set directly on the dictionary before any other modules are imported:

import pyglet
pyglet.options['debug_gl'] = False

They can also be set with environment variables before pyglet is imported. The corresponding environment variable for each option is the string PYGLET_ prefixed to the uppercase option key. For example, the environment variable for debug_gl is PYGLET_DEBUG_GL. Boolean options are set or unset with 1 and 0 values.

A summary of the debug environment variables appears in the table below.

Option Environment variable Type
debug_font PYGLET_DEBUG_FONT bool
debug_gl PYGLET_DEBUG_GL bool
debug_gl_trace PYGLET_DEBUG_GL_TRACE bool
debug_gl_trace_args PYGLET_DEBUG_GL_TRACE_ARGS bool
debug_graphics_batch PYGLET_DEBUG_GRAPHICS_BATCH bool
debug_lib PYGLET_DEBUG_LIB bool
debug_media PYGLET_DEBUG_MEDIA bool
debug_trace PYGLET_DEBUG_TRACE bool
debug_trace_args PYGLET_DEBUG_TRACE_ARGS bool
debug_trace_depth PYGLET_DEBUG_TRACE_DEPTH int
debug_win32 PYGLET_DEBUG_WIN32 bool
debug_x11 PYGLET_DEBUG_X11 bool
graphics_vbo PYGLET_GRAPHICS_VBO bool

The debug_media and debug_font options are used to debug the pyglet.media and pyglet.font modules, respectively. Their behaviour is platform-dependent and useful only for pyglet developers.

The remaining debug options are detailed below.