ParticleSystem 管理一组粒子的更新与显示。
| Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
optional
Object with the following properties:
|
Members
bursts : Array.<ParticleBurst>
一个
ParticleBurst 数组,用于在周期性时刻迸发粒子。
-
Default Value:
undefined
complete : Event
当粒子系统到达其生命周期末尾时触发事件。
每秒发射的粒子数量。
-
Default Value:
5
此对象的粒子发射器。
-
Default Value:
CircleEmitter
emitterModelMatrix : Matrix4
在粒子系统局部坐标系内变换粒子系统发射器的 4x4 变换矩阵。
-
Default Value:
Matrix4.IDENTITY
endColor : Color
粒子在其生命结束时的颜色。
-
Default Value:
Color.WHITE
粒子在其生命结束时应用于图像的最终缩放。
-
Default Value:
1.0
用于广告牌(billboard)的 URI、HTMLImageElement 或 HTMLCanvasElement。
-
Default Value:
undefined
当为
true 时,粒子系统已到达其生命周期末尾;否则为 false。
粒子系统发射粒子的持续时间(单位:秒)。
-
Default Value:
Number.MAX_VALUE
粒子系统在完成后是否应循环其迸发(bursts)。
-
Default Value:
true
maximumImageSize : Cartesian2
设置随机缩放粒子图像尺寸(像素)时的最大界限(宽 × 高),实际缩放将取此值以下。
-
Default Value:
new Cartesian2(1.0, 1.0)
设置粒子质量的最大值(单位:千克)。
-
Default Value:
1.0
设置粒子生命时长(秒)随机选取的最大值界限,实际生命将取此值以下。
-
Default Value:
5.0
设置粒子实际速度(米/秒)随机选取的最大值界限,实际速度将取此值以下。
-
Default Value:
1.0
minimumImageSize : Cartesian2
设置随机缩放粒子图像尺寸(像素)时的最小界限(宽 × 高),实际缩放将取此值以上。
-
Default Value:
new Cartesian2(1.0, 1.0)
设置粒子质量的最小值(单位:千克)。
-
Default Value:
1.0
设置粒子生命时长(秒)随机选取的最小值界限,实际生命将取此值以上。
-
Default Value:
5.0
设置粒子实际速度(米/秒)随机选取的最小值界限,实际速度将取此值以上。
-
Default Value:
1.0
modelMatrix : Matrix4
将粒子系统从模型坐标系变换到世界坐标系的 4x4 变换矩阵。
-
Default Value:
Matrix4.IDENTITY
是否显示该粒子系统。
-
Default Value:
true
获取或设置粒子尺寸的单位是米还是像素。
true 表示以米为单位;否则以像素为单位。
-
Default Value:
false
startColor : Color
粒子在其生命开始时的颜色。
-
Default Value:
Color.WHITE
粒子在其生命开始时应用于图像的初始缩放。
-
Default Value:
1.0
updateCallback : ParticleSystem.updateCallback
一组力回调(force callbacks)数组。回调会接收到一个
Particle 以及距上一次的时间差
-
Default Value:
undefined
Methods
销毁此对象持有的 WebGL 资源。销毁对象可以实现对 WebGL 资源的确定性
释放,而不是依赖垃圾回收器来销毁此对象。
一旦对象被销毁,就不应再使用它;调用除
一旦对象被销毁,就不应再使用它;调用除
isDestroyed 之外的任何函数都会抛出
DeveloperError 异常。因此,
请将返回值(undefined)赋给该对象,如示例所示。
Throws:
-
DeveloperError :此对象已被销毁,即已调用 destroy()。
Returns:
若此对象已被销毁则为
true,否则为 false。
Type Definitions
一个用于在每一步时间步修改粒子属性的函数。这可以包括力的修改、
颜色、尺寸等。
| Name | Type | Description |
|---|---|---|
particle |
Particle | 正在被更新的粒子。 |
dt |
number | 距上次更新的时间(单位:秒)。 |
Example:
function applyGravity(particle, dt) {
const position = particle.position;
const gravityVector = Cesium.Cartesian3.normalize(position, new Cesium.Cartesian3());
Cesium.Cartesian3.multiplyByScalar(gravityVector, GRAVITATIONAL_CONSTANT * dt, gravityVector);
particle.velocity = Cesium.Cartesian3.add(particle.velocity, gravityVector, particle.velocity);
}
