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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM