您的位置:首页 > 移动开发 > Cocos引擎

修正cocos2dx中读取粒子plist文件emissionRate字段的错误

2014-03-06 23:29 423 查看
感谢红孩儿群主和他的徒弟刘亮,给与了我十分耐心和详尽的帮助。

目前windows下适用于cocos2d-x的粒子编辑器只有一个“Cocos2d-x-ParticleEditor-for-Windows”。

这是一个开源项目,你可以从下面的网址获取。
http://code.google.com/p/cocos2d-windows-particle-editor/

该编辑器使用起来简单易用,唯一的问题就是生成了plist文件以后,在项目中播放的效果和实际效果有很大的差别。我为此问题纠结了整整一天,最终还是刘亮同学给我指点了迷津,原来这是cocos2d-x的一个bug。即在读取粒子文件的发射速率处写错了,他并没有读取文件中的速率。

好了,直接说修修改方法

打开文件CCParticleSystem.cpp  336行,将下面这句,

// emission Rate
_emissionRate = _totalParticles / _life;

替换成
// emission Rate
_emissionRate = dictionary["emissionRate"].asFloat();

以上做法为3.0的修改方案,3.0以下版本请自行对照,原理相通。

再次编译,运行!效果即和编辑器中一模一样!

再次感谢那些在我学习中给予巨大帮助的朋友们,世界因为有你而更美好!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: