私のparticlesystem.Play()
は機能しません。私はこの問題で数時間を費やしてしまったが、まだ分かりませんでした。Unity ParticleSystem再生と停止
私のキャラクターがオブジェクトにヒットするたびに、関数particleAuraPlay()
が呼び出され、 "HIT"というログメッセージが表示されます。これは、関数が正しく呼び出されていることを意味します。
playAura
がtrueに設定されている場合、パーティクルが再生され、ログメッセージ "Running"も表示されます。メッセージが表示されているので、私の論理は正しいと仮定していますが、パーティクルは再生を開始しません。誰も私の問題を解決してもらえますか?
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;
}
}
Logicは正しいように思える...あなたのparticlesystemオブジェクトがアクティブまたはnoですチェック...と描かれた層や位置を確認してください? – user1201239
@ bubibu - パーティクルシステムが適切な場所にありますか?私は親を忘れる前に問題を抱えていたか、間違った座標系を使った。また、私は更新で再生を呼び出すことはありません、ちょうどそれを一度呼び出す。 – Absinthe
こんにちは、ありがとう。私は、particleObject.Stop()という行を除外すると、パーティクルが再生を開始するため、適切な場所にあると確信しています。 – bubibu