From a34f175c784777d62c742e4c7a18059498da38c1 Mon Sep 17 00:00:00 2001 From: Michael Barkholt Date: Thu, 12 May 2016 17:46:48 +0200 Subject: fixed supported for extensions in gwt/webgl backend (#3835) --- .../src/com/badlogic/gdx/backends/gwt/GwtGraphics.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/backends/gdx-backends-gwt/src/com/badlogic/gdx/backends/gwt/GwtGraphics.java b/backends/gdx-backends-gwt/src/com/badlogic/gdx/backends/gwt/GwtGraphics.java index 57a1a7d6c..d66b947d3 100644 --- a/backends/gdx-backends-gwt/src/com/badlogic/gdx/backends/gwt/GwtGraphics.java +++ b/backends/gdx-backends-gwt/src/com/badlogic/gdx/backends/gwt/GwtGraphics.java @@ -408,9 +408,12 @@ public class GwtGraphics implements Graphics { } @Override - public boolean supportsExtension (String extension) { - if (extensions == null) extensions = Gdx.gl.glGetString(GL20.GL_EXTENSIONS); - return extensions.contains(extension); + public boolean supportsExtension (String extensionName) { + // Contrary to regular OpenGL, WebGL extensions need to be explicitly enabled before they can be used. See + // https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Using_Extensions + // Thus, it is not safe to use an extension just because context.getSupportedExtensions() tells you it is available. + // We need to call getExtension() to enable it. + return context.getExtension(extensionName) != null; } public void update () { -- cgit v1.2.3