Supported Platforms
For development the following platforms are recommended:
- Linux X11/Wayland
- MacOS
- Latest Firefox Nightly/Chrome Canary with WebGPU (Because WebGPU is a living spec, sometimes a bleeding-edge browser release is required)
Short-term Obstacles
Platform | Obstacles |
---|---|
Linux X11 | |
Linux Wayland | |
Windows | |
MacOS | |
Android | * Unable to get window size before resume |
iOS | * Touches are crashing the app on real devices * Instanced indices drawing is not supported * Drawing zero-length indices is prohibited |
Firefox | * Shared Memory is currently not working because it a parallel web worker corrupts memory |
Chrome | |
Safari | |
Mobile Firefox | |
Mobile Chrome | |
Mobile Safari |
Long-term Goals
WebGPU is not enabled by default for all platforms.
WebGPU Status:
Platform | Linux & Android | Graphics API | Note |
---|---|---|---|
Linux X11 | ✅ | Vulkan | |
Linux Wayland | ✅ | Vulkan | |
Windows | ❓ | ❓ | |
MacOS | ✅ | ❓ | |
Android | ✅ | Vulkan/OpenGL ES/Angle | Not tested, but should work on all devices if Angle is used. Vulkan is not yet supported widely. |
iOS | ✅ | Metal | Not tested. |
Firefox | ✅ | WebGL/WebGPU | |
Chrome | ✅ | WebGL/WebGPU | WebGPU is significantly faster because WASM output is smaller. |
Safari | 🛠️ | WebGL/WebGPU | Safari does not yet support Shared Array Buffer |
Mobile Firefox | 🆗 | WebGL/WebGPU | |
Mobile Chrome | 🆗 | WebGL | WebGPU is not implemented. |
Mobile Safari | 🛠️ | WebGL | WebGPU is not implemented. Safari does not yet support Shared Array Buffer |
✅ = First Class Support — 🆗= Best Effort Support — 🛠️ = Unsupported, but support in progress