我的particlesystem.Play()
不起作用。我已經花了幾個小時在這個問題上,仍然無法弄清楚。Unity ParticleSystem播放和停止
每當我的角色遇到一個對象時,它會調用函數particleAuraPlay()
,並顯示日誌消息「HIT」,表示函數被正確調用。
當playAura
設置爲true時,粒子應該播放,並且再次顯示日誌消息「正在運行」。由於信息顯示我假設我的邏輯是正確的,但粒子不會開始播放。任何人都可以解決我的問題嗎?
using UnityEngine;
using System.Collections;
public class ParticleController : MonoBehaviour {
private bool playAura = false;
private ParticleSystem particleObject;
void Start() {
particleObject = GetComponent<ParticleSystem>();
particleObject.Stop();
}
void Update() {
if (playAura)
{
Debug.Log("Running");
particleObject.Play();
}
}
public void particleAuraPlay()
{
Debug.Log("HIT");
playAura = true;
}
}
邏輯似乎是正確的...查看您的粒子系統對象是活動或不...並檢查其上繪製或位置的層? – user1201239
@ bubibu - 你確定粒子系統在正確的位置嗎?在忘記父母之前,我遇到了問題,或者我使用了錯誤的座標系。另外,我不會在更新中調用Play,只需調用一次即可。 – Absinthe
嗨感謝您的回覆。我很確定它是在正確的位置,因爲如果我排除了particleObject.Stop()這一行,粒子將開始播放。 – bubibu