首页 > 代码库 > Cocos2dx 流星效果实现

Cocos2dx 流星效果实现

DionysosLai(906391500@qq.com) 2014/8/28

         对于用来衬托唯美的意境,与其天空中,点点一闪而过的流星,莫不是说最适合了。对于痴情儿女,私定终身就在这一刻良辰美景中了。今天,我等糙人就来“糟蹋”这一个美好的事物。

        

         功能需求:

1.      实现流星效果。达到的效果与下图一致:

                                                            

 

         功能分析:

         1.      通过图片分析,可以简化成下图所示:

                                                                                                                           

         不变部分:流星头;

         拖尾部分:流星尾巴,注意流星尾巴是一头粗糙,一头尖,同时从头到尾,颜色会变化,变化幅度取决于位置。

         粒子部分:在流星尾巴区域,可以适当一些细碎的小星星。

 

         因此,流星的制作:就是精灵移动+拖尾效果+细碎的小星星粒子效果

 

         功能实现:

         重点部分,就是流星拖尾部分制作,置于小星星的粒子效果,就是自己慢慢调了。

         实现流星拖尾:

         这里采用的cocos2dx自带的CCMotionStreak类。对于CCMotionStreak的应用,可以看引擎自带测试例子。

         核心代码如下所示:

m_pMoStar = CCMotionStreak::create(0.5f, 1, 7, ccWHITE,"page9/steak.png" );
m_pMoStar->setPosition(CCPointZero);
m_pMoStar->setVisible(false);
addChild(m_pMoStar);

         然后再update中不停的更新其位置即可。

         这里面的一些数值是根据图片调出来,拖尾图片如下所示:

                                                                                                                         

         这里的图片有出路,原来是用在切水果游戏中的刀光效果。在实际使用时,图片应该是一头粗,一头细,同时尾巴有其他颜色。

         详细代码和资源路径,请访问这里: https://github.com/DionysosLai/cocoEffect/tree/master/%E6%B5%81%E6%98%9F 。

         明天中秋,祝大家节日快乐!

Cocos2dx 流星效果实现