测试手机:三星i9268和联想A820,故障现象相同
cocos2d-x版本:2.2.5,开发语言为C++
测试代码:引擎自带的cpp test。
测试方法:
在手机上运行cpp test,进入CCArmature性能测试界面,原来播放"Knight_f/Knight",CCArmature数量为120,性能良好,刷新率为59到60。
其余不变,仅将"Knight_f/Knight"改为"Cowboy",性能急剧下降,刷新率不到10,即使将CCArmature数量降为20,刷新率仍不足10。
使用CCBatchNode,性能会提升10%左右,但刷新率仍然只有10。
我们的产品由于使用了cocostudio编辑并导出骨骼动画,遇到了同样的问题,刷新率只有10,非常卡顿。
如果播放dragonbones导出的动画,则性能良好,即使加载50个CCArmature,刷新率仍然在60左右。
附图两张,分别是播放"Knight_f/Knight"和"Cowboy"。其中,"Cowboy"做了armature->setScale(0.3f);