问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

cocos2dx使用粒子效果一定需要物理引擎吗

发布网友 发布时间:2022-04-12 19:23

我来回答

3个回答

懂视网 时间:2022-04-12 23:45

http://www.cocos2dx.net/?p=66 一、介绍 粒子系统指的是一个使用大量很小的精灵或者其他的一些绘制对象模拟一些模糊效果。使用传统的绘制技术很难实现。它们经常被用到一些混乱系统,自然现象以及一些化学反应动画效果中。 二、点阵vs矩形 在之前版本的coco

http://www.cocos2dx.net/?p=66

一、介绍

粒子系统指的是一个使用大量很小的精灵或者其他的一些绘制对象模拟一些模糊效果。使用传统的绘制技术很难实现。它们经常被用到一些混乱系统,自然现象以及一些化学反应动画效果中。

二、点阵vs矩形

在之前版本的cocos2dx中,有两种类型的粒子系统:矩形和点阵粒子系统:

1)CCParticleSystemQuad

2)CCParticleSystemPoint

CCParticleSystemQuad有一些额外的特点而CCParticleSystemPoint不支持:

1)旋转粒子系统:粒子们能够围绕轴线旋转,而CCParticleSystemPoint没有这个属性

2)粒子们有大小。而在CCParticleSystemPoint中,如果粒子尺寸大于64,那么将会被当成64

3)整个系统可以被缩放,可以使用缩放属性

因为CCParticleSystemPoint不支持CCParticleBatchNode,所以它被从cocos2dx粒子系统中移除掉了(囧)。

三、CCParticleBatchNode

一个CCParticleBatchNode 能够引用一个纹理并且只有一个纹理(一个图片文件)。只有被包含在纹理中的CCParticleSystems可以被添加到CCSpriteBatchNode。被添加到CCSpriteBatchNode 中的CCParticleSystems在一个OpenGL ES绘制中调用。如果 CCParticleSystems没有被添加进一个CCParticleBatchNode,那么每一个粒子系统都需要被OpenGL ES绘制一次,那样效率就很低了。

创建一个矩形粒子系统

CCParticleSystemQuad* m_emitter = newCCParticleSystemQuad();
m_emitter = CCParticleFire::create();


四、重力vs半径模式

重力模式


重力模式能够让粒子飞向或者远离一个中心点。这种的优势是它允许一个动态的,组织的效果。你可以用如下代码设置重力模式:

//重力模式
this->m_nEmitterMode = kCCParticleModeGravity;

this->modeA.gravity = ccp(0,-90);


在重力模式中,以下属性是合法的:

gravity (Point)。粒子系统的重力。

speed (float)。粒子们射出的速度。

speedVar(float)速度变量

tangencialAccel(float)粒子们的正切加速度

tangencialAccelVar(float)粒子们正切加速度的变量

radialAccel(float)粒子们的半径加速度。

radialAccelVar(float)粒子们半径加速度的变量

半径模式


半径模式能够让粒子在圆中旋转。也可以创造螺旋模式能让粒子向屏幕里屏幕外飞。你可以设置半径模式用下面的几行代码:

// 半径模式
this->m_nEmitterMode = kCCParticleModeRadius;
// 设置开始半径
this->modeB.startRadius = 0;
this->modeB.startRadiusVar = 0;//ccp(0,0);
半径模式有下列合法的属性:
startRadius (a float).粒子的开始半径

startRadiusVar (a float). 开始半径变量
endRadius (a float). 粒子的结束半径
endRadiusVar (a float).结束半径变量
rotatePerSecond (a float).围绕一个来源点的每秒旋转角度
rotatePerSecondVar (a float).每秒旋转角度变量

粒子们的常规属性:

startSize:粒子的初始尺寸(像素值)
startSizeVar
endSize:粒子的结束尺寸(如果你想让粒子的开始大小同结束大笑相同,就用一下kCCParticleStartSizeEqualToEndSize
endSizeVar
startColor :粒子开始颜色(ccColor4F)
startColorVar
endColor :粒子结束颜色
endColorVar
startSpin:仅用在CCParticleSystemQuad中,起始螺旋度
startSpinVar
endSpin:仅用在CCParticleSystemQuad中,结束螺旋度
endSpinVar
life粒子的生命生存时间,单位是秒
lifeVar
angle:粒子开始角度,float
angleVar
positon:CCPoint粒子位置
positonVar
centerOfGravity :CGPoint

系统通用属性:

emissionRate duration (a float):每秒有多少粒子被发射

duration (a float):粒子系统生存时间

blendFunc (a ccBlendFunc):用于系统渲染的OpenGL的渲染函数

positionType (a tCCPositionType).:使用kCCPositionTypeFree (默认值)属性可以自由的移动粒子们。或者使用kCCPositionTypeGrouped 让粒子们一组一组的移动。

texture (a CCTexture2D).粒子的纹理

热心网友 时间:2022-04-12 20:53

粒子效果和物理引擎不相关的,用工具编辑好效果生成文件后,用ParticleSystem加载

热心网友 时间:2022-04-12 22:11

不是一定需要。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如果银行拒贷有哪些办法 小天鹅滚筒洗衣机水位多少合适 阴阳师百闻牌攻略大全 百闻牌式神卡组阵容大全 阴阳师百闻牌三大妖狐阵容推荐 妖狐流派怎么搭配?-新手攻略-安族网... 阴阳师百闻牌妖狐快攻阵容 怎么搭配攻略推荐 阴阳师百闻牌妖狐技能攻略 妖狐属性及卡组搭配推荐-新手攻略-安族网... 阴阳师百闻牌妖狐最强卡组 阵容怎么搭配攻略 阴阳师百闻牌妖狐卡组推荐 怎么搭配攻略分享 带鹏字的公司名字大全 鹏字开头公司起名 叶罗丽娃娃玩具店在哪 为什么百家争鸣时期的人都称为...子,比如孔子,老子,墨子等,子的意思是什么? 子是什么含义? “仔子”是什么意思 古代人的字“某某子”中的“子”是是什么意思 古代的孔子,老子,孙子,孟子等 都称之什么什么子是何意? 古代为什么有些人叫什么什么子,例如孔子,孟子,男性加子,那女性呢? 某某子是什么梗 古时称呼中带有的“子”字所代表的意思是什么呢? 闭口闪点测定仪常见问题有哪些? UZi正式从RNG转会加入小象大鹅,复出后续也没有明确计划,你怎么看? 闭口闪点测定仪计量时注意事项有哪些? Uzi与刘青松携手加入BLG,你认为他们接下来的发展会怎么样? Uzi加入小象大鹅是另有隐情,还是明枪暗箭勾心斗角结果呢? 开口闪点和闭口闪点有何不同? 闭口闪点测试仪 Uzi复出后加入BLG后,你认为能和刘青松产生什么样的化学反应? BLG宣布Uzi加入担任ADC,他能担起重任吗? 开口闪点和闭口闪点差多少 阿贝尔闭口闪点测定仪有哪些优势特点呢? Uzi复出加入BLG战队,他和刘青松会产生什么样的奇妙反应? 晏子使楚中,子是什么意思 卖车应该注意哪些问题? 卖车应该注意哪些问题 卖车需要准备什么材料 自己的车借给别人出了事故,准备卖车需要注意什么? 去车开新卖车要注意点什么? 卖车要注意什么 拿到了新三板批文,是不是在股转系统网站上能查到??? 新三板一家公司的做市商在哪里查询?股转系统网站没找到啊 - 信息提示 股转系统哪些文件新三板董秘手册 磁铁的各个部位都有磁力吗?磁力的大小相同吗? 磁铁上磁力最强的部分叫什么,磁铁有两个磁极。指北的磁极叫什么,指南的... 磁铁的磁力两端是什么,中间是什么,磁铁上磁力最强的部分叫什么 磁铁上磁力最强的是哪?,磁铁有两磁极。一块磁铁断裂后,每小块磁铁有几级? 看看一块磁铁的哪个位置磁力最大?能吸几个图钉? 磁铁的两端为什么磁力大 一块条形磁铁两极的磁力最大,那可不可以把地球比作一个巨大的磁铁 磁铁磁性最强的地方是( ) 一块长方体的磁铁上的每个面的磁力相同吗?