public bool isPlaying ;

描述

粒子系统当前是否处于播放状态?

当每帧都有粒子系统时,isPlaying 返回 true。当 isPlaying 返回 false 时,粒子系统已停止。

using UnityEngine;

// A particle sprite example of isPlaying. A button is created // that shows whether the particle system is running. If not, then // it can be started. If it is running then it can be stopped.

using UnityEngine;

public class ExampleClass : MonoBehaviour { public Texture2D tex; private ParticleSystem ps; private Sprite sprite;

void Start() { ps = GetComponent<ParticleSystem>(); sprite = Sprite.Create(tex, new Rect(0.0f, 0.0f, tex.width, tex.height), Vector2.zero);

var textureSheetAnimation = ps.textureSheetAnimation; textureSheetAnimation.enabled = true; textureSheetAnimation.mode = ParticleSystemAnimationMode.Sprites; textureSheetAnimation.AddSprite(sprite); }

void OnGUI() { if (ps.isPlaying) { if (GUI.Button(new Rect(10, 70, 150, 50), "Stop and clear")) { ps.Stop(true, ParticleSystemStopBehavior.StopEmittingAndClear); } } else { if (GUI.Button(new Rect(10, 70, 150, 50), "Play")) { ps.Play(false); } } } }