zoukankan      html  css  js  c++  java
  • Cocos2dx 小技巧(九)现成的粒子特效

    和高中的她 差点儿相同有两三年没见面了吧。下午她正好来泉州。我俩出来一起吃了个饭。

    怎么说呢,自从高中毕业后我俩的联系就少了非常多。大学期间也就见过两三面吧。

    现在毕业也快一年了,她已是人妇,而我自己的感情也是经历的长期的稳定与最近的跌宕。事实上那份感觉一直都不曾改变,变了的是周边不断影响自己的人和事。

    你要好好的幸福下去。而我也在争取幸福的路上。

    -----

    这篇讲的是粒子,事实上我对粒子这一块没什么研究,由于当初刚開始接粗cocos2dx时。总经理和我说粒子这块能够临时不去了解。由于还用不到。他的这话也导致我非常长时间都有意无意的去避开粒子这一块知识。

    所以说啊,我也是个菜鸟啊。还有非常多东西不懂。

    尽管博客写的还比較多,但水平也就尔尔吧。有的人叫我大神,大侠啥的,请千万别“诅咒”我啊~~~。

    由于知识从懵懂到理解的过程是痛苦而又快乐的,每次一学到一个新的知识点后我就想赶紧分享到博客上来,一方面是能够加深自己对该知识点的理解,还有一方面我也想让很多其它人知道这个知识点,少走些弯路...

    假设你认为我要解说粒子的原理啥的,那就大错特错了。毕竟技巧性的文章讲究的就是短小可是能够旋转嘛。我就直接将一些能够用的现成粒子特效拉出来扯扯虎皮。以下開始扯:
    1、先说雪花特效。去年冬天看过一款游戏,叫部落啥的,它的地图界面一直都有雪花飘来飘去。那时候认为真TM高端大气上档次,现在我就呵呵了。


    ParticleSystem* ps = ParticleSnow::create();
    //由于偷懒,我直接用helloWorld里的close 图片当雪花
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));//生成的雪花从这个坐标往下落
    this->addChild(ps,10);
    演示效果...自己去想象吧。
    假设想控制产生场景中雪花的数量。能够使用以下这个接口。以下几个样例也是一样:
    static ParticleSnow* createWithTotalParticles(int numberOfParticles);//參数即是雪花的数量	
    2、烟火效果
    ParticleSystem* ps = ParticleFireworks::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    3、下雨效果
    ParticleSystem* ps = ParticleRain::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    4、烟雾
    ParticleSystem* ps = ParticleSmoke::create();//效果实在不咋地
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    5、爆炸
    ParticleSystem* ps = ParticleExplosion::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    6、螺旋
    ParticleSystem* ps = ParticleSpiral::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    7、流星(用彗星来描写叙述会更贴切一点,由于它拖着一条长长的尾巴)
    ParticleSystem* ps = ParticleMeteor::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    8、星云
    ParticleSystem* ps = ParticleGalaxy::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    9、太阳( 日 )
    ParticleSystem* ps = ParticleSun::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);
    10、火焰
    ParticleSystem* ps = ParticleFire::create();
    ps->setTexture(Director::getInstance()->getTextureCache()->addImage("CloseSelected.png"));
    ps->setPosition(Point(200,200));
    this->addChild(ps,10);

    哈哈,写完了。多久没写过这样的复制粘贴的博客了。嘿嘿。

    尊重原创,转载请注明来源:http://blog.csdn.net/star530/article/details/23552641
  • 相关阅读:
    vue2.0 keep-alive最佳实践
    Vue解决安卓4.4不兼容的问题
    体验异步的终极解决方案-ES7的Async/Await
    axios在vue中的简单配置与使用
    AngularJS-UI-Router
    SignalR 填坑记
    小心C# 5.0 中的await and async模式造成的死锁
    使用BCP导出导入数据
    关闭正在执行的事务 Kill
    C# 正则表达式
  • 原文地址:https://www.cnblogs.com/cxchanpin/p/6884390.html
Copyright © 2011-2022 走看看