/// <summary> /// 更新粒子状态 /// </summary> protected virtual void UpdateParticleState() { //判断是否更新粒子状态 if (oldControllerState == controllerState) { return; } oldControllerState = controllerState; switch (controllerState) { case ParticleControllerState.None: None(); break; case ParticleControllerState.Play: Play(); break; case ParticleControllerState.Stop: Stop(); break; } }
/// <summary> /// 播放时间到自动执行停止 /// </summary> public void AutomaticStop(bool _isUnscaledDeltaTime = false) { if (!isAutomaticStopped) { return; } if (isStopped) { tempStopTime += _isUnscaledDeltaTime ? Time.unscaledDeltaTime : Time.deltaTime; if (tempStopTime >= maxLifeTime) { isStopped = false; tempStopTime = 0; controllerState = ParticleControllerState.Stop; } } }