I'm currently integrating Spine animations into a 2D mobile game developed with Qt/QML (Qt Quick), targeting Android devices. I’ve exported the character rigs and animations using the official Spine runtime for Qt, and everything looks great — but I’m running into some issues on real devices.
Key Issues I'm Facing:
- FPS drops when multiple Spine characters are on screen, especially during fast transitions or when animations overlap.
- Memory usage spikes when switching scenes or reloading skeletons dynamically.
- Animation blending sometimes stutters, even though timelines are separated cleanly.
I’ve followed the optimization tips from the Spine docs (e.g., atlas packing, skeleton caching), but it still feels heavy on mid-range Android devices.
Questions:
- Is there a preferred way to reuse Spine skeleton instances across multiple QML scenes without reloading them from JSON every time?
- Should I consider moving to native OpenGL rendering instead of Qt’s SceneGraph for better animation performance?
- Any tips from devs who have used Spine in real-world mobile games and faced similar bottlenecks?
This project is a side passion of mine and I’d love to polish it further for release. If anyone's curious to try the demo APK, just let me know happy to share a link.
Thanks a lot in advance, and I really appreciate this awesome community!