感谢原帖作者 MengF 分享 Spine VAT 的实现思路和测试结果 使用gpt5.6-sol模型 实现
图一来自公司内部项目,因涉及项目画面和资源,不便公开完整场景,这里只展示性能面板数据。
在 5000 个 VAT 实例同时渲染的情况下:
- FPS:100;
- Draw Call:6;
- Frame Time:2.22 ms;
- Renderer Time:2.14 ms;
- 三角面数:666,5180;
- GFX Texture:12.91 MB;
- GFX Buffer:1.67 MB。
从结果可以看到,大量实例使用 VAT 和 GPU Instancing 后,
可以共享 Mesh、材质和动画纹理,最终只产生 6 个 Draw Call。
图二来自公开示例工程。
左侧使用 Chrome DevTools 模拟低端移动设备 CPU,设置了 13.3 倍 CPU 降速;右侧为实际运行数据。
在 1000 个 VAT 实例同时渲染的情况下:
- FPS:59;
- Draw Call:3;
- Frame Time:9.41 ms;
- Renderer Time:8.6 ms;
- 三角面数:468,356;
- GFX Texture:5.93 MB;
- GFX Buffer:0.37 MB。
在 CPU 被大幅限速的模拟环境下,1000 个实例仍然可以基本维持
60 FPS,说明运行时的主要动画顶点计算已经转移到了 GPU。
仓库地址:https://github.com/ckkkkkkkkks/vat-spine
项目属于 Vibe Coding 实践,很多地方还在持续完善中。
欢迎大家交流指正,代码有问题请直接指出,大家轻喷。


