What is the current WebGPU support status?

Hi everyone!

Short question regarding WebGPU; what is the support status and is there a support roadmap somewhere visible?

Just asking this because out of curiosity wanted to try it in my game project, but got bunch of errors while doing nothing but switch from the WebGL engine. I can post some of the errors here but I would prefer to first have a glance of what is supposed to work at the moment :slight_smile:

Everything should work as we try to stay in sync with the spec, but it is evolving quickly so until they release a v1 you will get some warnings for features/syntaxes that were once supported but that are now deprecated: fixing them is not too high a priority for us before v1 as they don’t prevent the programs running => if you get errors that make your program fail you should post in the forum as it could be a problem on our end.

So, I would advice not using WebGPU as a production ready engine until the WebGPU team releases a v1 (hopefully around september / october…).

3 Likes

Hi, did you use Chrome Canary to test WebGPU features ? In my case it was the easiest way to run webGPU :slight_smile:

1 Like

@Evgeni_Popov Btw I tried your excellent Ocean Demo wich is very impressive (but it doesn’t seems to works anymore on Canary 105.0.5131.0)

It seems we would need to generate a new TintWASM version because the one we are using is generating smoothStep (instead of smoothstep) which is not supported anymore. @sebavan : do you know if it’s possible?

Yeah, I did :slight_smile:

Yeah currently this is a hobby project, was just eager to see if there are some perf improvements using WebGPU in my situation :slight_smile:

1 Like

@bghgary, @Cedric could we generate a new one ? pretty please ?

1 Like
3 Likes

Sorry for necromancing this thread buuuut I never got into getting my game project working in WebGPU. And also it seems that there is something wrong with my models and maybe how Babylon handles them? For example, here is an older that I’ve used for testing:

This works with WebGL but not WebGPU. Any idea what gives? :slight_smile:

Some of your objects (like cloth) need more than 8 vertex buffers (color, matricesIndices, matricesWeights, normal, position, uv, uv2, uv3, uv4) and WebGPU only supports 8 by default…

It will be able to query the limits of the GPU and set higher limits, but it’s not implemented in Chrome yet.

1 Like

Following up on this thread - reading the status page here: WebGPU Status | Babylon.js Documentation, which seems like it was last updated on jan 1, 2022?

Is there an updated status? I just tried switching to the webgpu engine and all my performance issues went away! And everything seems to work well. But am wondering if it’s safe to use in general in prod?

thx
ben

I have created a PR to update the page:

We now get the limits from the browser.

Happy to read that!

Currently, only Chrome supports the full specification. Firefox retail doesn’t support WebGPU at all. Firefox nightly supports it, but not completely (last time I checked, even the basic playground didn’t work, but that was a long time ago). And Safari doesn’t support it.

So, if you’re only aiming for Chrome desktop, this might be a good choice. Otherwise, you should keep support for WebGL2.

2 Likes