EsotericSoftware/spine-runtimes

[ts] WebGPU support and Spine-Pixi runtime

Closed this issue · 3 comments

Are there plans to implement WebGPU support with the TS runtime? Look at the awesome performance difference using this PixiJS v8 example without WebGPU vs with WebGPU (you may need to disable webgpu in your browser to see the difference.)

https://goodboydigital.github.io/pixi-bunnymark/dist/?version=v8&count=100000&renderer=webgpu
https://goodboydigital.github.io/pixi-bunnymark/dist/?version=v8&count=100000&renderer=webgl

I'm assuming the TS runtime needs to have WebGPU support before the Spine-Pixi runtime can be updated to v8?

#2305
#2299

Jupp, the TS runtime would need WebGPU support, which is currently not on our mid term roadmap. The bigger issue at the moment is that Pixi v7 vs v8 has been another big change, so we first need to get that going, while supporting both.

FWIW I get 81 FPS on WebGL and 85 FPS on WebGPU in Chrome on macOS (M1 Max). Bunny mark results are also likely not directly transferable to a more complex setup like spine-pixi, where meshes are generated and resubmitted to the GPU each frame. Bunny mark simply has a metric ton of static meshes.

However, webgpu provides compute shaders for concurrent gpu computing. The v8 version of pixi does not introduce compute shaders, but provides support for webgpu. Emmm, that's all I can mention.

This will be part of the effort of the Pixi team, see #2531