我想在Unity中做一个FPS,我遇到了武器范围。我想让一把突击步枪有100米的射程,这样当我从它身上射出一颗子弹时,子弹应该在100米后销毁。我怎样才能做到这一点?我使用raycasts的方向与hit.point(有最大的距离)来知道我的子弹打在哪里。我知道有一个函数Destroy(seconds),它可以在浮动的秒数后摧毁对象。我怎样才能不在一段时间后销毁子弹,而是在一定距离后销毁?先谢谢你的回答 :)
它真的很容易。
用... Vector3.Distance 计算初始位置与位置弹(transform.position)之间的距离。
`Vector3.Distance(initialposition, transform.position)`
如果>指定的距离,你就销毁对象
你可以使用另一个功能。(transform.position - initialposition).magnitude
也许在性能上更好,如果需要(我不知道)。