updateParticles 更新粒子的运动
updateParticles
类型: MethodDeclaration
所属类: ParticleLayer
定义位置: animation.ts
描述
更新粒子的运动
参数 deltaTime
: 增量时间(毫秒)
返回值:当前图层中已激活粒子的数量
参数
参数名 | 类型 | 描述 | 默认值 |
---|---|---|---|
deltaTime | number | - | - |
返回值
类型: number
当前图层中已激活粒子的数量
源代码
位置: 第 1598 行
public updateParticles(deltaTime: number): number {
const elements = this.elements
let eCount = elements.count
if (eCount === 0) return 0
const reserves = this.reserves
let rCount = reserves.count
let offset = 0
deltaTime *= this.emitter.speed
for (let i = 0; i < eCount; i++) {
const element = elements[i]!
switch (element.update(deltaTime)) {
case false:
// 回收未激活粒子
reserves[rCount + offset] = element
offset++
continue
default:
// 重新排序已激活粒子
if (offset !== 0) {
elements[i - offset] = element
}
continue
}
}
// 如果有粒子被回收,更新相关属性
if (offset !== 0) {
elements.count = eCount - offset
reserves.count = rCount + offset
eCount = elements.count
}
// 返回已激活粒子的数量
return eCount
}
文档生成时间:2025/7/7 12:07:06