您的位置:首页 > 移动开发 > Cocos引擎

Cocos2d-x3.1 粒子效果演示样例

2015-12-19 16:57 597 查看
这里把粒子的几种效果粘出来,以便以后使用

原文地址:/article/1640626.html

//
//  IntervalLayer.cpp
//  testthirdone
//
//  Created by 杜甲 on 14-7-7.
//
//

#include "IntervalLayer.h"

#define SID_STEP1    100
#define SID_STEP2    101
#define SID_STEP3    102

#define IDC_PAUSE    200

bool IntervalLayer::init()
{
return true;
}

IntervalLayer::IntervalLayer()
{
_time0 = _time1 = _time2 = _time3 = _time4 = 0.0f;

auto s = Director::getInstance()->getWinSize();

auto sun = ParticleSun::create();
sun->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
sun->setPosition(Vec2(s.width / 2 -100, s.height / 2));

sun->setTotalParticles(130);
sun->setLife(5.0f);

this->addChild(sun);
// timers

auto fire = ParticleFire::create();
fire->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
fire->setPosition(Vec2(s.width / 2 + 50, s.height / 2));

fire->setTotalParticles(130);
fire->setLife(5.0f);

this->addChild(fire);

auto fireworks = ParticleFireworks::create();
fireworks->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
fireworks->setPosition(Vec2(s.width / 2 + 50, s.height / 2 - 200));

fireworks->setTotalParticles(130);
fireworks->setLife(5.0f);

this->addChild(fireworks);

auto galaxy = ParticleGalaxy::create();
galaxy->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
galaxy->setPosition(Vec2( 50, s.height / 2 + 200));

galaxy->setTotalParticles(130);
galaxy->setLife(5.0f);

this->addChild(galaxy);

auto flower = ParticleFlower::create();
flower->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
flower->setPosition(Vec2( 250, s.height / 2 + 200));

flower->setTotalParticles(130);
flower->setLife(5.0f);

this->addChild(flower);

//流星
auto meteor = ParticleMeteor::create();
meteor->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
meteor->setPosition(Vec2( 250, 20));

meteor->setTotalParticles(130);
meteor->setLife(5.0f);

this->addChild(meteor);

//旋涡
auto spiral = ParticleSpiral::create();
spiral->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
spiral->setPosition(Vec2( 450, 40));

spiral->setTotalParticles(130);
spiral->setLife(5.0f);

this->addChild(spiral);

//爆炸
auto explosion = ParticleExplosion::create();
explosion->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
explosion->setPosition(Vec2( 50, 440));

explosion->setTotalParticles(130);
explosion->setLife(5.0f);

this->addChild(explosion);

//烟雾
auto smoke = ParticleSmoke::create();
smoke->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
smoke->setPosition(Vec2( 450, 640));

smoke->setTotalParticles(130);
smoke->setLife(5.0f);

this->addChild(smoke);

//雪
auto snow = ParticleSnow::create();
snow->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
snow->setPosition(Vec2( 450, 840));

snow->setTotalParticles(130);
snow->setLife(5.0f);

this->addChild(snow);

//雨
auto rain = ParticleRain::create();
rain->setTexture(Director::getInstance()->getTextureCache()->addImage("fire.png"));
rain->setPosition(Vec2( 450, 940));

rain->setTotalParticles(130);
rain->setLife(5.0f);

this->addChild(rain);

}


效果图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: