6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

时间:2021-11-28 15:26:41


1
粒子

演示样例

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

2
类图关系

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

3
系统原生粒子

CCParticleSystem

全部粒子系统的父类

CCParticleSystemPoint、

CCParticleSystemQuad

点粒子和方形粒子系统,都继承了CCParticleSystem的全部属性

CCParticleExplosion

爆炸粒子效果

CCParticleFireworks

烟花粒子效果

CCParticleFire

火焰粒子效果

CCParticleMetepr

流行粒子效果

CCParticleSpiral

漩涡粒子效果

CCParticleSnow

雪粒子效果

CCParticleSmoke

烟粒子效果

CCParticleSun

太阳粒子效果

CCParticleRain

雨粒子效果

4
代码

//CCParticleExplosion * particle = CCParticleExplosion::create();

//CCParticleFireworks * particle = CCParticleFireworks::create();

//CCParticleFire * particle = CCParticleFire::create();

//CCParticleMeteor * particle = CCParticleMeteor::create();

//CCParticleSpiral * particle = CCParticleSpiral::create();

//CCParticleSnow * particle = CCParticleSnow::create();

//CCParticleSmoke * particle = CCParticleSmoke::create();

//CCParticleSun * particle = CCParticleSun::create();

CCParticleRain * particle = CCParticleRain::create();

particle->setPosition(ccp(240, 160));

addChild(particle);

5
手动制作粒子系统

粒子编译器软件

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

编辑好后生成xx.plist文件

CCParticleSystemQuad * particle = CCParticleSystemQuad::create("ring.plist");

particle->setPosition(ccp(240, 160));

addChild(particle);

particle->setDuration(4);

6
案例

爆炸粒子效果

T21Particle.h

#ifndef
__T12Particle_H__

#define
__T12Particle_H__

#include
"cocos2d.h"

#include
"TBack.h"

USING_NS_CC;

class
T21Particle :public
TBack

{

public:

static
CCScene *
scene();

CREATE_FUNC(T21Particle);

bool
init();

};

#endif

T21Particle.cpp

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//爆炸粒子效果

CCParticleExplosion *
particle =
CCParticleExplosion::create();

addChild(particle);

return
true;

}

执行效果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

烟花效果

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//烟花效果

CCParticleFireworks *
particle =
CCParticleFireworks::create();

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height
/ 4));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行结果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

火焰效果:

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//火焰效果

CCParticleFire *
particle =
CCParticleFire::create();

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height
/ 4));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

流星效果:

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//流星粒子效果

CCParticleMeteor *
particle =
CCParticleMeteor::create();

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height
/ 4));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行效果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

漩涡粒子效果

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//流行粒子效果

CCParticleSpiral *
particle =
CCParticleSpiral::create();

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height
/ 4));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行效果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

雪花效果:

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//雪花效果

CCParticleSnow *
particle =
CCParticleSnow::create();

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行效果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

烟雾效果:

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//烟雾效果

CCParticleSmoke *
particle =
CCParticleSmoke::create();

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height/3));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行结果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

太阳效果

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//太阳效果

CCParticleSun *
particle =
CCParticleSun::create();

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height/3));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行效果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

下雨效果

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

//细雨效果

CCParticleRain *
particle =
CCParticleRain::create();

//particle->setRotation(90);

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行结果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

7
通过自己定义的.plist文件作出粒子效果

案例:

环形效果

#include
"T21Particle.h"

#include
"AppMacros.h"

CCScene *
T21Particle::scene()

{

CCScene *
scene =
CCScene::create();

T21Particle *
layer =
T21Particle::create();

scene->addChild(layer);

return
scene;

}

bool
T21Particle::init()

{

TBack::init();

CCParticleSystemQuad *
particle =
CCParticleSystemQuad::create("ring.plist");

//设置位置显示位置

particle->setPosition(ccp(winSize.width
/ 2,winSize.height
/ 2));

//设置时间间隔

particle->setDuration(20);

addChild(particle);

return
true;

}

执行结果:

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果