Unity 在距离后销毁子弹
Unity destroy bullet after distance
我想在 Unity 中制作 FPS,我遇到了武器射程。我希望突击步枪的射程为 100 米,因此当我用它射出子弹时,子弹应该在 100 米后销毁。我怎样才能做到这一点?我使用 hit.point(最大距离)的光线投射来确定我的子弹击中的位置。我知道有一个函数 Destroy(seconds) 在浮点数秒后销毁对象。我怎样才能在一段时间后而不是在一段距离后摧毁一颗子弹?预先感谢您的每一个答案! :)
真的很简单:
使用Vector3.Distance在初始位置和位置子弹(transform.position)之间计算距离。
`Vector3.Distance(initialposition, transform.position)`
如果 > 指定的距离你摧毁了物体
你可以使用另一个函数:(transform.position - initialposition).magnitude
如果需要,性能可能会更好(我不知道)
我想在 Unity 中制作 FPS,我遇到了武器射程。我希望突击步枪的射程为 100 米,因此当我用它射出子弹时,子弹应该在 100 米后销毁。我怎样才能做到这一点?我使用 hit.point(最大距离)的光线投射来确定我的子弹击中的位置。我知道有一个函数 Destroy(seconds) 在浮点数秒后销毁对象。我怎样才能在一段时间后而不是在一段距离后摧毁一颗子弹?预先感谢您的每一个答案! :)
真的很简单:
使用Vector3.Distance在初始位置和位置子弹(transform.position)之间计算距离。
`Vector3.Distance(initialposition, transform.position)`
如果 > 指定的距离你摧毁了物体
你可以使用另一个函数:(transform.position - initialposition).magnitude
如果需要,性能可能会更好(我不知道)