Unity3d 当OnCollisionCenter启动时显示ParticleSystem

Unity3d 当OnCollisionCenter启动时显示ParticleSystem,unity3d,particle-system,Unity3d,Particle System,当OnCollisionCenter功能启动时,我会播放两个音频片段,我还想在发生碰撞的位置显示一个particleSystem 这是代码 private var beenHit : boolean = false; private var targetRoot : Animation; var hitSound : AudioClip; var chitSound : AudioClip; var resetSound : AudioClip; var resetTime : float =

当OnCollisionCenter功能启动时,我会播放两个音频片段,我还想在发生碰撞的位置显示一个particleSystem

这是代码

private var beenHit : boolean = false;
private var targetRoot : Animation;
var hitSound : AudioClip;
var chitSound : AudioClip;
var resetSound : AudioClip;
var resetTime : float = 3.0;
var dieEffectsPrefab : Transform;

public ParticleSystem DestructionEffect;

   function OnCollisionEnter() {
     audio.PlayOneShot(chitSound);
     audio.PlayOneShot(hitSound);



     Debug.Log("HitSomething");
     animation.CrossFade ("dying");
     Destroy(gameObject,1);

}

在代码中添加一个类型为“GameObject”的变量

在“创建”->“粒子系统”中创建“粒子系统”。 按照您想要的方式进行配置

将其拖动到一个“预制件”中

在Unity编辑器中,将预置拖动到“游戏对象”中

添加代码行:

实例化(MyGameObject,this.transform.position,this.transform.rotation)

这行代码实例化了世界上的“游戏对象”

在他的“预制”粒子标记中:“在清醒状态下玩”

因此,当你在世界上实例化你的粒子时,它会自动“播放”

按照这一步骤。。。你得到你想要的


我希望这有帮助

让我们拿游戏对象A和游戏对象B

  • A&B-应该有一个对撞机
  • A | | B-任何人都应该有一个刚体连接到它
  • 在(或)B脚本中实现OnCollisionCenter()
  • 当冲突触发时,获取particleSystem实例并实现

    例:particleInstance.Play();它将开始播放粒子系统

    谢谢