0

我正在使用 Unity3D 为使用 SteamVR 的 HTV Vive 进行开发。我从资产商店下载了一个资产,该资产具有使用粒子系统创建的爆炸效果。我想在物体被破坏时播放粒子动画。这是我使用的代码,但未成功。

private void OnDestroy() {
    explosion.GetComponent<ParticleSystem>().Play();
}

Explosion 是检查器设置的 GameObject 类型的公共变量。我将粒子系统对象放在那里。

为什么它不起作用?有人推荐一个简短的教程来学习使用(而不是创建)粒子效果吗?

谢谢


层次结构视图

层次结构视图

我已经将 PS 作为目标的子对象和独立对象进行了尝试。

检查员的视图(目标)

检查器的视图(粒子系统)

编辑:由于某种原因,粒子效果在场景开始后立即被破坏。

4

1 回答 1

0

尝试将爆炸效果制作成预制件,并在销毁时将其实例化。

GameObject explosion; // Prefab asset
private void OnDestroy() {
    Instantiate(explosion, transform.position, Quaternion.identity);
}

另外,不要忘记 Destroy 的停止动作。 在此处输入图像描述

于 2020-08-03T15:40:53.190 回答