团结摧毁子弹后的距离



我想在 Unity 中制作一个 FPS,但我遇到了武器范围。我希望突击步枪有100m的射程,所以当我从它发射子弹时,子弹应该在100m后摧毁。我该怎么做?我使用光线投射作为方向,并带有 hit.point(具有最大距离(来了解我的子弹击中的位置。我知道有函数 Destroy(秒(,它在浮点数秒后摧毁对象。我怎么能不是在一段时间后而是在一段距离后摧毁一颗子弹?提前感谢每一个答案!:)

它真的很容易:

使用 Vector3.初始位置和位置项目符号之间的距离 (transform.position( 来计算距离。

`Vector3.Distance(initialposition, transform.position)`

如果>指定的距离,则销毁对象

您可以使用另一个函数:(transform.position - initialposition).magnitude

如果需要,也许性能更好(我不知道(

最新更新