# "WebGL not supported" with Chrome 114 and Fedora 38 (Kernel 6.3.8)

**URL:** <https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966>\
**Category:** Bugs\
**Tags:** chrome\
**Created:** [June 27, 2023, 7:18am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966 "2023-06-27T07:18:00Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![7om](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/7om/32/11158_2.png) [@7om](https://forum.babylonjs.com/u/7om)\
**Post date:** [June 27, 2023, 7:18am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/1 "2023-06-27T07:18:00Z")

</div>

I get an “WebGL not supported” error for any Babylon.js page (e.g. [https://www.babylonjs-playground.com/](https://www.babylonjs-playground.com/)). Any other WebGL content (e.g. three.js) works just fine.

Tried different Babylon.js versions, WebGL, WebGL2… same issue.

Here’s the console error:

```auto
rendererComponent.tsx:364 Error: WebGL not supported
    at t.e (thinEngine.ts:954:23)
    at new t (engine.ts:584:9)
    at t.createDefaultEngine (rendererComponent.tsx:151:28)
    at asyncEngineCreation (<anonymous>:40:32)
    at window.initFunction (<anonymous>:44:43)
    at R._compileAndRunAsync (rendererComponent.tsx:295:36) 'Retrying if possible. If this error persists please notify the team.'

```

Fedora 38, 64 bit  
Chrome 114.0.5735.198  
Kernel 6.3.8  
Intel Xe graphics driver

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [June 27, 2023, 8:33am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/2 "2023-06-27T08:33:35Z")

</div>

Can you try to browse this page and see if that works: [https://webglreport.com/](https://webglreport.com/)

We don’t do anything fancy to get the webgl context:

```typescript
try {
    this._gl = <WebGL2RenderingContext>(canvas.getContext("webgl", options) || canvas.getContext("experimental-webgl", options));
} catch (e) {
    throw new Error("WebGL not supported");
}

```

Maybe some options are not supported by your system…

Try to change the options you pass to the engine creation and see if that helps.

Also, this thread could help:

> [@'WebGL not supported' Error while running examples on the playground page](https://forum.babylonjs.com/t/webgl-not-supported-error-while-running-examples-on-the-playground-page/25520):
>
> I use chrome on a macbook: Macos Big Sur 11.6 Processor: 2 GHz Quad-Core Intel Core i5 Graphics: Intel Iris Plus Graphics 1536 MB When I was running the example on playground, the page show that error message. After some research, I was aware that it’s because chrome disabled webGL feature for compatibility issue. So I followed this guide and enabled the feature, everything seems to be normal. I checked the output of chrome://gpu/ on chrome. However, as I ran the example again, t…

---

<div class="post-metadata">

**Author:** ![7om](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/7om/32/11158_2.png) [@7om](https://forum.babylonjs.com/u/7om)\
**Post date:** [June 27, 2023, 8:47am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/3 "2023-06-27T08:47:22Z")

</div>

Thanks for the suggestions.

Already tried WebGL(2) report and everything looks fine IMHO (just like any other WebGL test page I could find):

| Platform: | Linux x86\_64 |
| --- | --- |
| Browser User Agent: | Mozilla/5.0 (X11; Linux x86\_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 |
| Context Name: | webgl2 |
| GL Version: | WebGL 2.0 (OpenGL ES 3.0 Chromium) |
| Shading Language Version: | WebGL GLSL ES 3.00 (OpenGL ES GLSL ES 3.0 Chromium) |
| Vendor: | WebKit |
| Renderer: | WebKit WebGL |
| Unmasked Vendor: | Google Inc. (Intel) |
| Unmasked Renderer: | ANGLE (Intel, Vulkan 1.3.246 (Intel(R) Xe Graphics (TGL GT2) (0x00009A49)), Intel open-source Mesa driver) |
| Antialiasing: | Available |
| ANGLE: | No |
| Major Performance Caveat: | No |

It used to work for a year now on the same machine. Relevant stuff that recently changed: kernel went from 6.2 to 6.3 and Chrome got its usual updates.

---

<div class="post-metadata">

**Author:** ![7om](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/7om/32/11158_2.png) [@7om](https://forum.babylonjs.com/u/7om)\
**Post date:** [June 27, 2023, 9:05am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/4 "2023-06-27T09:05:50Z")

</div>

Before the error message shown above, I get the following line: “Failed to create WebGPU Context Provider”

Why is it trying to use WebGPU if WebGL or WebGL2 is selected?

---

<div class="post-metadata">

**Author:** ![7om](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/7om/32/11158_2.png) [@7om](https://forum.babylonjs.com/u/7om)\
**Post date:** [June 27, 2023, 9:20am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/5 "2023-06-27T09:20:29Z")

</div>

Everything works with Chromium 114.0.5735.133 (Official Build) Fedora Project (64-bit).

Judging by the `chrome://gpu` output, Chromium is _not_ using Vulkan (Chrome does). 🤔

---

<div class="post-metadata">

**Author:** ![7om](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/7om/32/11158_2.png) [@7om](https://forum.babylonjs.com/u/7om)\
**Post date:** [June 27, 2023, 9:30am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/6 "2023-06-27T09:30:35Z")

</div>

For some reason (Chrome update?) `chrome://flags/#enable-vulkan` was no longer disabled. Disabling fixed the issue. So it’s actually related to [Babylonjs not working on Chrome 108.0.5359.94 - #9 by 7om](https://forum.babylonjs.com/t/babylonjs-not-working-on-chrome-108-0-5359-94/36323/9)

Thanks for bearing with me. ❤

---

<div class="post-metadata">

**Author:** ![7om](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/7om/32/11158_2.png) [@7om](https://forum.babylonjs.com/u/7om)\
**Post date:** [June 27, 2023, 10:28am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/7 "2023-06-27T10:28:18Z")

</div>

Still, Babylon.js seems to either be more picky or has very specific requirements about the WebGL context because virtually any other WebGL page works with the Vulkan driver enabled.

If any dev wants to dig deeper, I’m all in… 😉

---

<div class="post-metadata">

**Author:** ![Evgeni\_Popov](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/evgeni_popov/32/4432_2.png) [@Evgeni\_Popov](https://forum.babylonjs.com/u/Evgeni_Popov)\
**Post date:** [June 27, 2023, 11:54am UTC](https://forum.babylonjs.com/t/webgl-not-supported-with-chrome-114-and-fedora-38-kernel-6-3-8/41966/8 "2023-06-27T11:54:10Z")

</div>

As said above, we create the context in a straightforward way…

You can try to change the options to see if it works better: alpha, antialias, premultipliedAlpha, preserveDrawingBuffer, stencil.

We enable a number of properties by default in the playground (`stencil=true`, `preserveDrawingBuffer=true`, `antialias=true`), it’s possible that one of them is the problem. I seem to recall that Threejs uses `preserveDrawingBuffer=false` by default, so you should try first to set it to `false` and see if that helps.
