Cocos2D-X2.2.3学习笔记17(粒子系统)

首先我们需要理解粒子系统是什么东西?比如说,火焰,它是由一个个的微小的粒子组成。每一个微小的粒子,在一定范围内进行无规则的运动。火源,就是我们粒子发射器所在的位置,通过粒子发射器,进行粒子的创建。


其实,粒子效果不能再游戏中多用,会影响性能。所以这章我也没怎么学。知道怎么用就行了


至于里边的源码,什么什么的,有点复杂。以后要用的时候再深究


OK,这次我们分两部分


1.学会使用Cocos2dx中自带的粒子效果


2.通过粒子编辑器,自定义粒子效果


1.学会使用Cocos2dx中自带的粒子效果

Cocos2dx粒子系统继承关系图

这里,粒子系统的基类是   CCParticleSystem


一般,我们自定义的粒子系统都继承  CCParticleSystemQuad


应为这个类,比基类对我们设置参数要少很多。


其实,每个粒子和粒子发射器,有N多的属性需要我们去设置,具体的,我也记不住,也不认真看,总之,需要时在baidu


下面,我们来看看系统自带的效果,


它都被封装在了CCParticleExamples.h   这个文件中


有很多效果,用法都是一样的,那么我们随便来实现一个试试


#include "HelloWorldScene.h"

USING_NS_CC;

CCScene* HelloWorld::scene()
{
    // 'scene' is an autorelease object
    CCScene *scene = CCScene::create();
    
    // 'layer' is an autorelease object
    HelloWorld *layer = HelloWorld::create();

    // add layer as a child to scene
    scene->addChild(layer);

    // return the scene
    return scene;
}

// on "init" you need to initialize your instance
bool HelloWorld::init()
{
    //
    // 1. super init first
    if ( !CCLayer::init() )
    {
        return false;
    }
    
    CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
    CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin();
	//第二种方式:使用自定义粒子效果
	CCParticleSystemQuad* pSnow= CCParticleSystemQuad::create("Particle/Snow.plist");
	pSnow->setPosition(ccp(visibleSize.width/2,visibleSize.height));
	this->addChild(pSnow);
	//第一种方式:使用系统自带的粒子效果
	CCParticleFlower* pFlower= CCParticleFlower::create();
	pFlower->setTexture(CCTextureCache::sharedTextureCache()->addImage("Particle/snow.png"));
	pFlower->setPosition(ccp(visibleSize.width/2,visibleSize.height/2));
	this->addChild(pFlower);
    return true;
}



资源,最后上传,这里先贴图看看效果


Cocos2dx下雪的粒子效果

这里录制GIF,可能电脑不行,明显有点卡,看FPS


但是,不打开录制软件又没问题。


估计,移植到手机上也会卡的


2.通过粒子编辑器,自定义粒子效果


这里就直接上传,源码和编辑器了,

至于,编辑器的属性,用法什么的,自行百度



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值