ParticleSystem

class in UnityEngine

/

继承自:Component

切换到手册

描述

粒子系统的脚本接口。

一种功能强大、用途广泛的粒子系统组件。

常规参数

粒子系统的常规参数保存在一个特殊的主模块中。在 Inspector 中,这些参数显示在所有其他模块上方:



在脚本中,可以通过 ParticleSystem.main 访问这些参数。

模块效果乘数

每个模块都有一些特殊的乘数属性,利用这些属性,您可以在不编辑曲线本身的情况下更改曲线的整体效果。这些乘数属性全部以它们影响的曲线命名 - 例如,ParticleSystem.emission.rateMultiplier 控制 ParticleSystem.emission.rate 在给定系统中的整体效果。

常量值的简写表示法

对于简单的常量值,参数支持简写表示法。要为参数设置常量值,只需为其指定一个数字。无需在 ParticleSystemCurveMode.Constant 模式下创建 MinMaxCurveMinMaxGradient 对象。

例如,下面的语句:\ ParticleSystem.emission.rate = new ParticleSystem.MinMaxCurve(5.0f);\ 应写成:\ ParticleSystem.emission.rate = 5.0f;

性能注意事项:在粒子模块上设置属性时,设置会立即传递到本机代码。这样可以提供最佳的性能。也就是说,在模块结构上设置属性时,不会在脚本中设置需要重新设置回粒子系统的内容;一切都是自动完成的。

另请参阅:Particle

变量

collision粒子系统碰撞模块的脚本接口。
colorBySpeed粒子系统生命周期颜色模块的脚本接口。
colorOverLifetime粒子系统颜色生命周期模块的脚本接口。
customData粒子系统自定义数据模块的脚本接口。
emission粒子系统发射模块的脚本接口。
externalForces粒子系统外力模块的脚本接口。
forceOverLifetime粒子系统力生命周期模块的脚本接口。
inheritVelocity粒子系统速度继承模块的脚本接口。
isEmitting确定粒子系统是否发射粒子。当粒子系统的发射模块已完成、已暂停或已使用 Stop 和 StopEmitting 标志来停止该系统时,粒子系统可能停止发射。可以调用 Play 来恢复发射。
isPaused确定粒子系统是否已暂停。
isPlaying确定粒子系统是否在播放。
isStopped确定粒子系统是否已停止。
lights粒子系统光源模块的脚本接口。
limitVelocityOverLifetime粒子系统生命周期速度限制 (Particle System Limit Velocity over Lifetime) 模块的脚本接口。
main访问主粒子系统设置。
noise粒子系统噪声模块的脚本接口。
particleCount当前粒子数(只读)。
proceduralSimulationSupported该系统是否支持程序化模拟?
randomSeed重载用于粒子系统发射的随机种子。
rotationBySpeed粒子系统速度旋转 (Rotation by Speed) 模块的脚本接口。
rotationOverLifetime粒子系统旋转生命周期 (Particle System Rotation over Lifetime) 模块的脚本接口。
shape粒子系统形状模块的脚本接口。
sizeBySpeed粒子系统速控大小 (Particle System Size by Speed) 模块的脚本接口。
sizeOverLifetime粒子系统大小生命周期 (Particle System Size over Lifetime) 模块的脚本接口。
subEmitters粒子系统子发射器模块的脚本接口。
textureSheetAnimation粒子系统纹理帧动画 (Particle System Texture Sheet Animation) 模块的脚本接口。
time播放位置(以秒为单位)。
trails粒子系统轨迹模块的脚本接口。
trigger粒子系统触发模块的脚本接口。
useAutoRandomSeed控制粒子系统是否使用自动生成的随机数作为随机数生成器的种子。
velocityOverLifetime粒子系统速度生命周期 (Particle System Velocity over Lifetime) 模块的脚本接口。

公共函数

Clear删除粒子系统中的所有粒子。
Emit立即发射 count 个粒子。
GetCustomParticleData获取自定义每粒子数据流。
GetParticles获取该粒子系统的粒子。
IsAlive粒子系统是否包含任何存活的粒子,还是会产生更多粒子?
Pause暂停系统,因此不再发射新粒子,也不再更新现有粒子。
Play启动粒子系统。
SetCustomParticleData设置自定义每粒子数据流。
SetParticles设置该粒子系统的粒子。
Simulate在给定时间段内模拟粒子以快进粒子系统,然后将其暂停。
Stop使用提供的停止行为,停止播放粒子系统。
TriggerSubEmitter在粒子系统的所有粒子上触发指定的子发射器。

继承的成员

变量

gameObject此组件附加到的游戏对象。始终将组件附加到游戏对象。
tag此游戏对象的标签。
transform附加到此 GameObject 的 Transform。
hideFlags该对象应该隐藏、随场景一起保存还是由用户修改?
name对象的名称。

公共函数

BroadcastMessage调用此游戏对象或其任何子项中的每个 MonoBehaviour 上名为 methodName 的方法。
CompareTag此游戏对象是否使用 tag 进行了标记?
GetComponent如果游戏对象附加了类型为 type 的组件,则将其返回,否则返回 null。
GetComponentInChildren使用深度首次搜索返回 GameObject 或其任何子项中类型为 type 的组件。
GetComponentInParent返回 GameObject 或其任何父项中类型为 type 的组件。
GetComponents返回 GameObject 中类型为 type 的所有组件。
GetComponentsInChildren返回 GameObject 或其任何子项中类型为 type 的所有组件。
GetComponentsInParent返回 GameObject 或其任何父项中类型为 type 的所有组件。
SendMessage调用此游戏对象中的每个 MonoBehaviour 上名为 methodName 的方法。
SendMessageUpwards调用此游戏对象中的每个 MonoBehaviour 上或此行为的每个父级上名为 methodName 的方法。
GetInstanceID返回对象的实例 ID。
ToString返回对象的名称。

静态函数

Destroy移除 GameObject、组件或资源。
DestroyImmediate立即销毁对象 /obj/。强烈建议您改用 Destroy。
DontDestroyOnLoad在加载新的 Scene 时,请勿销毁 Object。
FindObjectOfType返回第一个类型为 type 的已加载的激活对象。
FindObjectsOfType返回所有类型为 type 的已加载的激活对象的列表。
Instantiate克隆 original 对象并返回克隆对象。

运算符

bool该对象是否存在?
operator !=比较两个对象是否引用不同的对象。
operator ==比较两个对象引用,判断它们是否引用同一个对象。