Cocos2d-x 粒子系统

第一种方法:自定义
[cpp] 
//建立一个粒子 系统   
CCParticleSystem* pParticleSystem=new CCParticleSystemQuad(); 
//产生300个粒子  
pParticleSystem->initWithTotalParticles(300); 
//设置粒子图片  
pParticleSystem->setTexture(CCTextureCache::sharedTextureCache()->addImage("yezi.png")); 
//设置粒子系统持续时间  
pParticleSystem->setDuration(-1);  
//设置重力方向  
pParticleSystem->setGravity(CCPointZero); 
//设置角度,角度变化率  
pParticleSystem->setAngle(0);  
pParticleSystem->setAngleVar(360);  
//设置运动速度,运动速度的变化率  
pParticleSystem->setSpeed(50);  
pParticleSystem->setSpeedVar(10);  
//设置径向加速度,径向加速度的变化率  
pParticleSystem->setRadialAccel(70);  
pParticleSystem->setRadialAccelVar(10);  
//设置切向加速度,径向加速度的变化率  
pParticleSystem->setTangentialAccel(80); 
pParticleSystem->setTangentialAccelVar(0); 
//设置粒子初始位置,位置变化率  
pParticleSystem->setPosition(mSize.width/2,mSize.height/2); 
pParticleSystem->setPosVar(ccp(100,100)); 
//设置粒子存在时间,时间变化率  
pParticleSystem->setLife(2);  
pParticleSystem->setLifeVar(0.3);  
//设置粒子初始颜色,颜色变化率  
ccColor4F cccStart={0.5,0.5,0.5,1.0};  
pParticleSystem->setStartColor(cccStart); 
pParticleSystem->setStartColorVar(cccStart); 
//设置粒子结束颜色,颜色变化率  
ccColor4F cccEnd={0.5,0.5,0.5,1.0};  
pParticleSystem->setStartColor(cccEnd);  
pParticleSystem->setStartColorVar(cccEnd); 
//设置粒子初始大小,大小变化率  
pParticleSystem->setStartSize(10);  
pParticleSystem->setStartSizeVar(20);  
//设置粒子结束大小,大小变化率  
pParticleSystem->setStartSize(12);  
pParticleSystem->setStartSizeVar(12);  
//设置每秒产生粒子数  
pParticleSystem->setEmissionRate(pParticleSystem->getTotalParticles()/pParticleSystem->getLife()); 
   
this->addChild(pParticleSystem,1);  
 
第二种方法:使用系统自带的
[cpp]  
CCParticleSystem* m_emitter;  
m_emitter = CCParticleFireworks::create();  
m_emitter->retain();  
this->addChild(m_emitter, 10);  
m_emitter->setTexture(CCTextureCache::sharedTextureCache()->addImage("yezi.png") ); 
m_emitter->setPosition(ccp(300,320));  
 
[cpp]  
-- CCParticleSystem(所有粒子系统的父类)  
-- CCParticleSystemPoint、CCParticleSystemQuad 点粒子和方形粒子系统 
    -- CCParticleExplosion      (爆炸粒子效果) 
    -- CCParticleFireworks      (烟花粒子效果) 
    -- CCParticleFire              (火焰粒子效果)  
    -- CCParticleFlower          (花束粒子效果) 
    -- CCParticleGalaxy          (星系粒子效果) 
    -- CCParticleMeteor          (流星粒子效果) 
    -- CCParticleSpiral          (漩涡粒子效果) 
    -- CCParticleSnow            (雪粒子效果) 
    -- CCParticleSmoke          (烟粒子效果) 
    -- CCParticleSun              (太阳粒子效果)  
    -- CCParticleRain            (雨粒子效果) 
 
 
第三种:使用plist文件
 
[cpp]  
CCParticleSystemQuad *system =CCParticleSystemQuad::create("lizi.plist"); 
system->setPosition(ccp(mSize.width/2, mSize.height/2));   
this->addChild(system, 1);

你可能感兴趣的:(cocos2d-x,plist)