Cocostudio是cocos2dx官方提供的游戏制作工具,其中包含了动作编辑器,其编辑好的动画导出的文件有三种:Atlastexture,json的AtalasTexture描述文件和plist动画描述文件,可以使用LibExtension Amature加载和播放。

    但Cocostduio的动作编辑器也有一些不足的地方:

    1. Cocostduio的崩溃率较高,很容易造成编辑过程中的数据丢失

    2. Cocostudio的动作编辑方式对美术来说学习成本大,使用上也多不方便,美术对此非常抗拒

    3. Cocostudio的动作编辑只支持骨骼动画,但其导出的文件预览和二次编辑要么不可用,要么便使用

    4. 对Flash动画的导入结果冗余度较大---会变为按帧采样的帧动画,资源体积膨胀迅速

    5. 没有3D渲染插件,3D模型动画渲染成2D动画需要手工操作

    基于这些要素的考虑,我们最终决定使用 Flash编辑动画 + 自制3ds max渲染插件进行动作编辑的方式进行动画制作。Flash制作的动画,目前已有成熟的开源组件Dragon Bones可,也有SuperAnim这样的swf转骨骼动画工具可以使用:

    Dragon Bones 的优点在于:

    1.基于Flash ,学习曲线平滑,而且大部分美术都懂Flash制作,Flash编辑功能丰富,易于使用,美术制作效率可以比Cocostduio高出数倍

    2.Dragon Bones是完整的开源组件,从编辑器到cocos2dx加载解析部分都是自己定制和修改的,这保证了项目风险控制和美术流程的可持续改进

    3.Dragon Bones导出的动画是骨骼动画,它的冗余度低,动画资源体积小,从而最终app占用的磁盘和内存空间都可以大幅节省,其渲染效率也会高于帧动画(纹理切换次数有数量有的减少)

    Dragon Bones的最大缺点就是它的库本身比较大,在加载方面也有一些小的工作要做。

   同样的SuperAnim也有除Dragon Bones 第2点之外的其它优点,同时它的库较小,仅仅4个文件,在通过较小的修改之后,就可以集成到Cocos2dx里使用。唯一的遗憾是SuperAnim的swf转换工具并未开源,存在有小工具无人维护的风险。在经过一些动画制作和导出之后,我们最终还是选择了Dragon Bones做为动画编辑器。而放弃了Cocostduio.

     作为补充,我们同时使用Max Script实现了一个渲染插件,用来从3ds max里渲染导出序列帧动画,如下图所示:

max渲染插件的基本功能包括:

1.渲染指定集合的模型

2.渲染指定帧集合的动画

3.支持多种格式的图片输入格式,提供自动按帧数命名

4.支持可选的1~8方向自动旋转相机进行动画渲染输出(如一般卡牌的单方向渲染和45角斜角的8方向输出)