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

前端之家收集整理的这篇文章主要介绍了6 cocos2dx粒子效果,类图关系,系统原生粒子和自定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


1 粒子

示例

2 类图关系

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 手动制作粒子系统

粒子编译器软件

编辑好后生成xx.plist文件

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

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

addChild(particle);

particle->setDuration(4);

6 案例

爆炸粒子效果

T21Particle.h

#ifndef@H_502_917@ __T12Particle_H__

#define@H_502_917@ __T12Particle_H__

#include@H_502_917@ "cocos2d.h"

#include@H_502_917@ "TBack.h"

USING_NS_CC@H_502_917@;

class@H_502_917@ T21Particle@H_502_917@ :public@H_502_917@ TBack

@H_502_917@{

public@H_502_917@:

@H_502_917@ static@H_502_917@ CCScene@H_502_917@ * scene@H_502_917@();

@H_502_917@ CREATE_FUNC@H_502_917@(T21Particle@H_502_917@);

@H_502_917@ bool@H_502_917@ init@H_502_917@();

@H_502_917@

@H_502_917@};

@H_502_917@

#endif

T21Particle.cpp

#include@H_502_917@ "T21Particle.h"

#include@H_502_917@ "AppMacros.h"

@H_502_917@

CCScene@H_502_917@ * T21Particle@H_502_917@::scene@H_502_917@()

@H_502_917@{

@H_502_917@ scene@H_502_917@ = CCScene@H_502_917@::create@H_502_917@();

@H_502_917@ T21Particle@H_502_917@ * layer@H_502_917@ = create@H_502_917@();

@H_502_917@ scene@H_502_917@->addChild@H_502_917@(layer@H_502_917@);

@H_502_917@ return@H_502_917@ scene@H_502_917@;

@H_502_917@}

@H_502_917@

bool@H_502_917@ init@H_502_917@()

@H_502_917@{

@H_502_917@ TBack@H_502_917@::init@H_502_917@();

@H_502_917@

@H_502_917@ //爆炸粒子效果

@H_502_917@ CCParticleExplosion@H_502_917@ * particle@H_502_917@ = CCParticleExplosion@H_502_917@::create@H_502_917@();

@H_502_917@

@H_502_917@ addChild@H_502_917@(particle@H_502_917@);

@H_502_917@

@H_502_917@ return@H_502_917@ true@H_502_917@;

@H_502_917@}

运行效果

烟花效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //烟花效果

@H_502_917@ CCParticleFireworks@H_502_917@ * particle@H_502_917@ = CCParticleFireworks@H_502_917@::create@H_502_917@();

@H_502_917@

@H_502_917@ //设置位置显示位置

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

@H_502_917@ //设置时间间隔

@H_502_917@ particle@H_502_917@->setDuration@H_502_917@(20);

@H_502_917@ addChild@H_502_917@(particle@H_502_917@);

@H_502_917@

@H_502_917@ return@H_502_917@ true@H_502_917@;

@H_502_917@}

运行结果:

火焰效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //火焰效果

@H_502_917@ CCParticleFire@H_502_917@ * particle@H_502_917@ = CCParticleFire@H_502_917@::

流星效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //流星粒子效果

@H_502_917@ CCParticleMeteor@H_502_917@ * particle@H_502_917@ = CCParticleMeteor@H_502_917@::

运行效果

漩涡粒子效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //流行粒子效果

@H_502_917@ CCParticleSpiral@H_502_917@ * particle@H_502_917@ = CCParticleSpiral@H_502_917@::

雪花效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //雪花效果

@H_502_917@ CCParticleSnow@H_502_917@ * particle@H_502_917@ = CCParticleSnow@H_502_917@::winSize@H_502_917@.height@H_502_917@));

@H_502_917@ //设置时间间隔

@H_502_917@ particle@H_502_917@->

烟雾效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //烟雾效果

@H_502_917@ CCParticleSmoke@H_502_917@ * particle@H_502_917@ = CCParticleSmoke@H_502_917@::winSize@H_502_917@.height@H_502_917@/3));

@H_502_917@ //设置时间间隔

@H_502_917@ particle@H_502_917@->

运行结果:

太阳效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //太阳效果

@H_502_917@ CCParticleSun@H_502_917@ * particle@H_502_917@ = CCParticleSun@H_502_917@::

下雨效果

init@H_502_917@();

@H_502_917@

@H_502_917@ //细雨效果

@H_502_917@ CCParticleRain@H_502_917@ * particle@H_502_917@ = CCParticleRain@H_502_917@::create@H_502_917@();

@H_502_917@ //particle->setRotation(90);

@H_502_917@

@H_502_917@ //设置位置显示位置

@H_502_917@ particle@H_502_917@->

运行结果:

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

案例:

环形效果

init@H_502_917@();

@H_502_917@

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

@H_502_917@

@H_502_917@ //设置位置显示位置

@H_502_917@ particle@H_502_917@->winSize@H_502_917@.height@H_502_917@ / 2));

@H_502_917@ //设置时间间隔

@H_502_917@ particle@H_502_917@->

运行结果:

猜你在找的Cocos2d-x相关文章