如果 ParticleSystem.MainModule.loop 为 true,在启用此属性时,粒子系统在首次变为可见时看起来仿佛已经模拟过一次循环。
using UnityEngine; using System.Collections;
[RequireComponent(typeof(ParticleSystem))] public class ExampleClass : MonoBehaviour { private ParticleSystem ps; public bool usePrewarm;
void Start() { ps = GetComponent<ParticleSystem>();
var main = ps.main; main.loop = true; // prewarm only works on looping systems
Restart(); }
void OnGUI() { bool newPrewarm = GUI.Toggle(new Rect(10, 60, 200, 30), usePrewarm, "Use Prewarm");
if (newPrewarm != usePrewarm) { usePrewarm = newPrewarm; Restart(); } }
void Restart() { ps.Stop(); ps.Clear();
var main = ps.main; main.prewarm = usePrewarm;
ps.Play(); } }