cocos2d-x引擎提供了強大的粒子系統,它在模仿自然現象、物理現象及空間扭曲上具備得天獨厚的優勢,為我們實現一些真實自然而又帶有隨機性的特效(如**、烟花、水流)提供了方便
程式例項1:建立乙個烟花效果的方法1
ccsize winsize = ccdirector::shareddirector()->getwinsize();
//烟花效果
ccparticlefireworks* fw = ccparticlefireworks::create();
addchild(fw);
fw->setposition(ccp(winsize.width / 2, winsize.height / 2));
執行結果:
程式例項2:建立乙個烟花效果的方法2
ccsize winsize = ccdirector::shareddirector()->getwinsize();
//烟花效果
ccparticlesystemquad* p = ccparticlefireworks::create();
addchild(p);
p->setposition(winsize.width / 2, winsize.height / 2);
執行結果:
程式例項3:建立乙個星雲效果
ccsize winsize = ccdirector::shareddirector()->getwinsize();
//星雲效果
ccparticlesystemquad* p2 = ccparticlegalaxy::create();
addchild(p2);
p2->setposition(ccp(winsize.width / 2, winsize.height / 2));
執行結果:
程式例項4:建立乙個彗星效果
ccsize winsize = ccdirector::shareddirector()->getwinsize();
//彗星效果
ccparticlesystemquad* p2 = ccparticlemeteor::create();
addchild(p2);
p2->setposition(ccp(winsize.width / 2, winsize.height / 2));
執行結果:
程式例項5:建立乙個花束效果
ccsize winsize = ccdirector::shareddirector()->getwinsize();
//鮮花效果
ccparticlesystemquad* p2 = ccparticleflower::create();
addchild(p2);
p2->setposition(ccp(winsize.width / 2, winsize.height / 2));
執行結果:
程式例項6:建立乙個火焰效果
ccsize winsize = ccdirector::shareddirector()->getwinsize();
//火焰效果
ccparticlesystemquad* p2 = ccparticlefire::create();
addchild(p2);
p2->setposition(ccp(winsize.width / 2, winsize.height / 2));
執行結果:
程式例項7:5個效果放在一起展示
ccsize winsize = ccdirector::shareddirector()->getwinsize();
//烟花效果
ccparticlesystemquad* p1 = ccparticlefireworks::create();
//星雲效果
ccparticlesystemquad* p2 = ccparticlegalaxy::create();
//火焰效果
ccparticlesystemquad* p3 = ccparticlefire::create();
//彗星效果
ccparticlesystemquad* p4 = ccparticlemeteor::create();
//鮮花效果
ccparticlesystemquad* p5 = ccparticleflower::create();
addchild(p1);
addchild(p2);
addchild(p3);
addchild(p4);
addchild(p5);
p1->setposition(ccp(100, winsize.height / 2));
p2->setposition(ccp(200, winsize.height / 2));
p3->setposition(ccp(300, winsize.height / 2));
p4->setposition(ccp(400, winsize.height / 2));
p5->setposition(ccp(500, winsize.height / 2));
執行效果:
程式例項8:
執行人工編輯的粒子
ccsize winsize = ccdirector::shareddirector()->getwinsize();
ccparticlesystemquad* p = ccparticlesystemquad::create("particles/galaxy.plist");
addchild(p);
p->setposition(ccp(winsize.width / 2, winsize.height / 2));
執行結果:
程式例項8:
執行能夠移動的粒子
cclayer::init();
ccsize winsize = ccdirector::shareddirector()->getwinsize();
ccparticlesystemquad* p = ccparticlesystemquad::create("particles/flower.plist");
addchild(p);
p->setposition(ccp(100, winsize.height / 2));
ccmoveby* by = ccmoveby::create(4, ccp(winsize.width, 0));
p->runaction(
ccrepeatforever::create(
ccsequence::create(by, by->reverse(), null)
) );
執行結果:
Cocos2d X中的粒子
cocos2d x引擎提供了強大的粒子系統,它在模仿自然現象 物理現象及空間扭曲上具備得天獨厚的優勢,為我們實現一些真實自然而又帶有隨機性的特效 如 烟花 水流 提供了方便 程式例項1 建立乙個烟花效果的方法1 ccsize winsize ccdirector shareddirector get...
cocos2dx之粒子效果
有時候我們需要做一些特殊的效果,比如子彈 的效果,當然我們用動畫也可以做出來,但是有時候發現利用粒子的效果去代替它會跟好看,我們先來看下粒子 void particledemolayer initlayer ccparticleflower,繼承的ccparticlesystemquad的,在coc...
cocos2d x 自帶11種粒子特效
粒子效果,存下來以備後用,實現方法很簡單,自己找張粒子,然後將 拷貝到helloworld的init函式裡,就可以實現 粒子特效 效果 ccparticlesystem particlesystem ccparticleexplosion create particlesystem settextu...