在 Unity 3D 中碰撞时发射粒子
Emit Particle onCollision in Unity 3D
我有一个角色要撞到一枚硬币。当角色与硬币碰撞时,应该会产生一个粒子"animation"。到目前为止,这是我的代码。一些基本的帮助会有很大帮助。此代码附在玩家角色上。
void OnTriggerEnter(Collider _hit)
{
if (_hit.tag == "Coin")
{
Destroy(_hit.gameObject);
coinCount++;
coinsText.text = "Coins: " + coinCount.ToString() + "/" + coinTotal.ToString();
var Bling : GameObject = Instantiate(Bling, transform.position, Quaternion.identity);
}
}
这就是你需要做的。
public ParticleSystem collisionParticlePrefab; //Assign the Particle from the Editor (You can do this from code too)
private ParticleSystem tempCollisionParticle;
void OnTriggerEnter (Collider _hit)
{
if (_hit.tag == "Coin") {
Destroy (_hit.gameObject);
coinCount++;
coinsText.text = "Coins: " + coinCount.ToString() + "/" + coinTotal.ToString();
tempCollisionParticle = Instantiate (collisionParticlePrefab, transform.position, Quaternion.identity) as ParticleSystem;
tempCollisionParticle.Play ();
}
}
我有一个角色要撞到一枚硬币。当角色与硬币碰撞时,应该会产生一个粒子"animation"。到目前为止,这是我的代码。一些基本的帮助会有很大帮助。此代码附在玩家角色上。
void OnTriggerEnter(Collider _hit)
{
if (_hit.tag == "Coin")
{
Destroy(_hit.gameObject);
coinCount++;
coinsText.text = "Coins: " + coinCount.ToString() + "/" + coinTotal.ToString();
var Bling : GameObject = Instantiate(Bling, transform.position, Quaternion.identity);
}
}
这就是你需要做的。
public ParticleSystem collisionParticlePrefab; //Assign the Particle from the Editor (You can do this from code too)
private ParticleSystem tempCollisionParticle;
void OnTriggerEnter (Collider _hit)
{
if (_hit.tag == "Coin") {
Destroy (_hit.gameObject);
coinCount++;
coinsText.text = "Coins: " + coinCount.ToString() + "/" + coinTotal.ToString();
tempCollisionParticle = Instantiate (collisionParticlePrefab, transform.position, Quaternion.identity) as ParticleSystem;
tempCollisionParticle.Play ();
}
}