0
如果在父節點被禁用時如何播放粒子系統效果?Unity如果父母被禁用時如何播放粒子系統效果?
我想在我的障礙位置上發揮粒子系統效應。問題是,我的粒子,如果我的對象的孩子,當我禁用父(對象)粒子系統得到的禁用它,並沒有發揮影響
我怎樣才能在相同的位置障礙物以及障礙物何時被禁用/銷燬。
如果在父節點被禁用時如何播放粒子系統效果?Unity如果父母被禁用時如何播放粒子系統效果?
我想在我的障礙位置上發揮粒子系統效應。問題是,我的粒子,如果我的對象的孩子,當我禁用父(對象)粒子系統得到的禁用它,並沒有發揮影響
我怎樣才能在相同的位置障礙物以及障礙物何時被禁用/銷燬。
創建GameObject調用ParticlesHolder。附上下面的腳本,然後確保將編輯器的大小更改爲2
。把兩個粒子放到每個插槽。這個想法是粒子不會是disabled
。
public class ParticleHolder : MonoBehaviour
{
public ParticleSystem[] effects;
public void playParticle(int particleNumber, Vector3 particlePos)
{
if (effects != null && effects[particleNumber] != null)
{
if (effects[particleNumber].isPlaying)
effects[particleNumber].Stop();
ParticleSystem tempPart = Instantiate(effects[particleNumber], particlePos, new Quaternion()) as ParticleSystem;
tempPart.Play();
}
}
}
現在,添加下面的代碼的代碼在你的Example
腳本:
ParticlesContainer particle;
在你Start()
功能:
particle = GameObject.Find("ParticlesHolder").GetComponent<ParticlesContainer>();
在你OnCollisionEnter()
功能:
particle.playParticle(0, transform.position);
在這個例子中,數組中的第一個粒子將會播放。
如果有兩個粒子,0
和1
是通過兩種有效值。如果有3
顆粒然後0
,1
,2
是三個值中傳遞。
就像你有public void SetDamage(int a_damage)
功能,您可以添加public void SetParticle(int particleId)
函數來設置要播放的粒子。
我想要一個普通的粒子在一個普通的物體上發揮作用,而一個爆炸粒子在特殊的物體上發揮作用 – John
@Groude我知道你的問題。你讀過答案了嗎?是你做的嗎? – Programmer
是的,沒有任何反應 – John