上山打老虎 发表于 2021-6-27 15:11:32

cocos2d-x自制工具05:Spriter动画编辑器的cocos2d-x运行库

Spriter动画编辑器是去年开始兴起的一个还不错的编辑器。使用Qt编写,跨平台。但是项目后期更新速度不是很快,并且bone系统总是有一些问题。在去年年底和今年年初的时候,被Spine超越。
平心而论,Spriter编辑器是一款很不错的工具,在界面和功能上都有独到之处。通过和使用Spine的同行们了解,Spine骨骼还是不错的,但是做切片动画就不是很方便,其实大部分动画都是切片的。
之前做了这个库,但是一直没有发出来,本来打算做一个综合动画库,支持所有的编辑器的动画数据,后来发现工作量出乎意料的大,于是就偷懒放弃了。在这里放出来供大家参考。并且Spriter到现在应该还是免费的吧,对于普通用户来说,使用这个编辑器做切片还是很不错的。而bone需要有动画基础的人才能玩好。
采用MIT协议,随便使用随便折腾。这个库之前参考了dr_watson的库,但是进行了大规模的重构,架构也完全变了,增加了大量接口。
这个库有如下特点:1.支持texturepacker输出的plist文本2.runAction运行方式,支持复杂的CCSequence CCRepeatForever3.自定义运行时间,支持CCSpawn 4.支持锁帧,节约CPU5.动画数据与播放数据分离,支持动画数据缓存6.纹理缓存需要用户自行控制,已提供文件名接口
另外在代码中我是用pugixml,这是一个很不错的xml解析库,接口非常友好,速度也不错。

在这里向几位作者表示感谢了。
下面是在VS2010中的各种测试
怪物动画测试:
主角动画测试:
CCSequence测试:
CCSpawn测试:
60帧播放效率测试:
锁定为24帧播放效率测试:
60帧播放和24帧播放对比测试:
有时间再补代码说明吧。其实例子里写得很清楚。







页: [1]
查看完整版本: cocos2d-x自制工具05:Spriter动画编辑器的cocos2d-x运行库