libgdx/libgdx · error · IllegalStateException
ANGLE currently can't be used with with Lwjgl3ApplicationCon
Error message
ANGLE currently can't be used with with Lwjgl3ApplicationConfiguration#enableGLDebugOutput
What it means
Error "ANGLE currently can't be used with with Lwjgl3ApplicationConfiguration#enableGLDebugOutput" thrown in libgdx/libgdx.
Source
Thrown at backends/gdx-backend-lwjgl3/src/com/badlogic/gdx/backends/lwjgl3/Lwjgl3Application.java:602
throw new GdxRuntimeException("Couldn't initialize GLES", e);
}
} else {
GL.createCapabilities();
}
initiateGL(config.glEmulation == Lwjgl3ApplicationConfiguration.GLEmulation.ANGLE_GLES20);
if (!glVersion.isVersionEqualToOrHigher(2, 0))
throw new GdxRuntimeException("OpenGL 2.0 or higher with the FBO extension is required. OpenGL version: "
+ glVersion.getVersionString() + "\n" + glVersion.getDebugVersionString());
if (config.glEmulation != Lwjgl3ApplicationConfiguration.GLEmulation.ANGLE_GLES20 && !supportsFBO()) {
throw new GdxRuntimeException("OpenGL 2.0 or higher with the FBO extension is required. OpenGL version: "
+ glVersion.getVersionString() + ", FBO extension: false\n" + glVersion.getDebugVersionString());
}
if (config.debug) {
if (config.glEmulation == GLEmulation.ANGLE_GLES20) {
throw new IllegalStateException(
"ANGLE currently can't be used with with Lwjgl3ApplicationConfiguration#enableGLDebugOutput");
}
glDebugCallback = GLUtil.setupDebugMessageCallback(config.debugStream);
setGLDebugMessageControl(GLDebugMessageSeverity.NOTIFICATION, false);
}
return windowHandle;
}
private static void initiateGL (boolean useGLES20) {
if (!useGLES20) {
String versionString = GL11.glGetString(GL11.GL_VERSION);
String vendorString = GL11.glGetString(GL11.GL_VENDOR);
String rendererString = GL11.glGetString(GL11.GL_RENDERER);
glVersion = new GLVersion(Application.ApplicationType.Desktop, versionString, vendorString, rendererString);
} else {
try {
Class gles = Class.forName("org.lwjgl.opengles.GLES20");View on GitHub (pinned to 97f4086187)
Solutions
- Do not call Lwjgl3ApplicationConfiguration#enableGLDebugOutput (or call it with false) when using ANGLE as the GL backend.
- Switch off ANGLE (use the default native OpenGL backend) if you need GL debug output enabled.
When it happens
Trigger: Thrown at backends/gdx-backend-lwjgl3/src/com/badlogic/gdx/backends/lwjgl3/Lwjgl3Application.java:602 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of libgdx/libgdx@97f4086187 (2026-08-14).
Data as JSON: /api/errors/66cb3824ae5eee3a.
Report an issue: GitHub.