@pixi/utils
Version:
Collection of utilities used by PixiJS
37 lines (34 loc) • 1.07 kB
JavaScript
import '../settings.mjs';
import { settings } from '@pixi/settings';
let supported;
function isWebGLSupported() {
if (typeof supported === "undefined") {
supported = function supported2() {
const contextOptions = {
stencil: true,
failIfMajorPerformanceCaveat: settings.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT
};
try {
if (!settings.ADAPTER.getWebGLRenderingContext()) {
return false;
}
const canvas = settings.ADAPTER.createCanvas();
let gl = canvas.getContext("webgl", contextOptions) || canvas.getContext("experimental-webgl", contextOptions);
const success = !!gl?.getContextAttributes()?.stencil;
if (gl) {
const loseContext = gl.getExtension("WEBGL_lose_context");
if (loseContext) {
loseContext.loseContext();
}
}
gl = null;
return success;
} catch (e) {
return false;
}
}();
}
return supported;
}
export { isWebGLSupported };
//# sourceMappingURL=isWebGLSupported.mjs.map