gpt4 book ai didi

c# - Unity C# 等待然后做

转载 作者:太空宇宙 更新时间:2023-11-03 23:32:15 25 4
gpt4 key购买 nike

我正在学习 Unity 的 Space Shooter 类(class),我已经到了小行星向我袭来的地步,我可以摧毁它们。

当小行星检测到触发碰撞时,它会触发“showExplosion”方法。问题是,在我们销毁游戏对象并实例化爆炸之后,爆炸仍然是一个对象。

这显然是一种不好的做法。

我需要做的(我认为)是等待动画完成然后销毁对象。

现在我假设有一个我可以监听的事件......知道这也很好......

但是我怎么简单地说等待 X 秒然后销毁爆炸对象。

最佳答案

通过使用协同程序,您可以执行类似的操作。

IEnumerator DestroyObjectAfterSeconds()
{
yield return new WaitForSeconds(timeInSeconds);
//DestroyObject here
}

在您的 showExplosion 方法调用中

 StartCoroutine("DestroyObjectAfterSeconds");

如果您想等待动画完成然后销毁游戏对象,您可以在 unity 中向销毁动画添加一个事件。为此,单击具有破坏动画的游戏对象,然后转到顶部栏的窗口或按 command + 6 并打开动画窗口,现在您选择动画的最后一帧,然后可以将事件添加到动画的最后一帧。这样您就可以在动画完成时销毁游戏对象。 :)

关于c# - Unity C# 等待然后做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31761146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com