【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第十九课:Cocos2D-X粒子系统1-3

【麦可网】Cocos2d-X跨平台游戏开发---学习笔记

第十九课:Cocos2D-X粒子系统1-3

=======================================================================================================================================================================

课程目标:

 - Cocos2D-X粒子系统

课程重点:

 - Cocos2D-X粒子属性

 - Cocos2D-X粒子发射器

考核目标:

 - 使用Cocos2D-X粒子系统

 - 使用粒子编辑器

=======================================================================================================================================================================

一、自带粒子

火焰效果
	CCTexture2D* fire = CCTextureCache::sharedTextureCache()->addImage("fire.png");
	CCParticleSystem* firePatricle = CCParticleFire::create();
	firePatricle->setTexture(fire);
	this->addChild(firePatricle);
	firePatricle->setPosition(ccp(200,50));


二、手动设置粒子属性






void DemoBigFlower::onEnter()
{
    ParticleDemo::onEnter();

    m_emitter = new CCParticleSystemQuad();
    m_emitter->initWithTotalParticles(50);
    //m_emitter->autorelease();

    m_background->addChild(m_emitter, 10);
    m_emitter->release();    // win32 :  use this line or remove this line and use autorelease()
    m_emitter->setTexture( CCTextureCache::sharedTextureCache()->addImage(s_stars1) );

    m_emitter->setDuration(-1);
    
// gravity
//重力
    m_emitter->setGravity(CCPointZero);
    
// angle
//角度
    m_emitter->setAngle(90);
    m_emitter->setAngleVar(360);
    
// speed of particles
//速度
    m_emitter->setSpeed(160);
    m_emitter->setSpeedVar(20);
    
// radial
//半径
    m_emitter->setRadialAccel(-120);
    m_emitter->setRadialAccelVar(0);
    
// tagential
//次要的
    m_emitter->setTangentialAccel(30);
    m_emitter->setTangentialAccelVar(0);
    
// emitter position
//发射器位置
    m_emitter->setPosition( ccp(160,240) );
    m_emitter->setPosVar(CCPointZero);
    
// life of particles
//粒子生命
    m_emitter->setLife(4);
    m_emitter->setLifeVar(1);
    
// spin of particles
//粒子自旋转
    m_emitter->setStartSpin(0);
    m_emitter->setStartSizeVar(0);
    m_emitter->setEndSpin(0);
    m_emitter->setEndSpinVar(0);
    
// color of particles
//粒子颜色
    ccColor4F startColor = {0.5f, 0.5f, 0.5f, 1.0f};
    m_emitter->setStartColor(startColor);
    
    ccColor4F startColorVar = {0.5f, 0.5f, 0.5f, 1.0f};
    m_emitter->setStartColorVar(startColorVar);
    
    ccColor4F endColor = {0.1f, 0.1f, 0.1f, 0.2f};
    m_emitter->setEndColor(endColor);
    
    ccColor4F endColorVar = {0.1f, 0.1f, 0.1f, 0.2f};    
    m_emitter->setEndColorVar(endColorVar);
    
// size, in pixels
//大小,像素
    m_emitter->setStartSize(80.0f);
    m_emitter->setStartSizeVar(40.0f);
    m_emitter->setEndSize(kParticleStartSizeEqualToEndSize);
    
    // emits per second
    //每秒发射  m_emitter->setEmissionRate(m_emitter->getTotalParticles()/m_emitter->getLife());
    
    // additive
    m_emitter->setBlendAdditive(true);

    setEmitterPosition();
}

std::string DemoBigFlower::title()
{
    return "ParticleBigFlower";
}


三、粒子编辑器

ParticleDesigner(Mac)
ParticleEditor(windows)


===================================================================

总结:

一般做游戏是采用粒子编辑器,嘿嘿~有预览效果当然好了。

 

开心一刻:

昨天梦见上帝说可满足我一个愿望我拿出地球仪说要世界和平,他说太难换一个吧,我拿出你的照片说要这人变漂亮,他沉思了一下说拿地球仪我再看看。

 

 

【麦可网】Cocos2d-X跨平台游戏开发---教程下载:http://pan.baidu.com/s/1kTio1Av

【麦可网】Cocos2d-X跨平台游戏开发---笔记系列:http://blog.csdn.net/qiulanzhu


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值