I’m excited to announce that Bevy’s main branch now supports WebGPU rendering on the web! This means you can play with it now by checking out our repo provided you have a supported web browser (WebGPU is still in the process of rolling out). You can also explore our live WebGPU examples. The upcoming Bevy 0.11 release will have WebGPU support built in, which is slated for release in about a month!
What is WebGPU?
#
WebGPU is an exciting new web standard for doing modern GPU graphics and compute. It takes inspiration from Vulkan, Direct3D 12, and Metal. In fact, it is generally implemented on top of these APIs under the hood. WebGPU gives us access to more GPU features than WebGL2 (such as compute shaders) and also has the potential to be much faster. It means that more of Bevy’s native renderer features are now also available on the web. It also uses the new WGSL shader language. We’re very happy with how WGSL has evolved over time and Bevy uses it internally for our shaders. We also added usability features like imports! But with Bevy you still have the option to use GLSL if you prefer.
WebGPU has started making waves because Chrome just shipped WebGPU support in Chrome 113, which means people with normal Chrome releases can start testing it. Firefox and Safari also have implementations in the works!
What is Bevy?
#
For those who don’t know, Bevy is a refreshingly simple cross-platform data-driven game engine built in Rust. It has a modern and extensible 2D and 3D renderer, a best-in-class ECS (entity component system) that is delightful to use, plenty of features, and a vibrant and open developer community. It currently supports Windows, MacOS, Linux, iOS, and Web. We also have work in progress Android support … and ambitions for even more platforms in the future!
You can check out our Quick Start