【问题标题】:Unity destroy bullet after distance距离后团结摧毁子弹
【发布时间】:2020-05-14 16:45:52
【问题描述】:

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

【问题讨论】:

标签: unity3d distance destroy bullet


【解决方案1】:

真的很简单:

在初始位置和位置子弹(transform.position)之间使用Vector3.Distance计算距离。

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

如果 > 指定距离你摧毁物体

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

如果需要,性能可能会更好(我不知道)

【讨论】:

  • 好吧,我不知道为什么我没有考虑到这一点。我觉得很菜鸟:)。我搜索了文档,但找不到任何东西,但我无法想象答案就在我面前:)。谢谢你的回答,法国人。总是有帮助:)
  • 要最终确定答案,如果您的原始问题已解决,请记住接受并投票赞成答案,如果您有其他问题,请提出新问题:stackoverflow.com/help/someone-answers
  • 完成了,很抱歉这次忘记了。
猜你喜欢
  • 2020-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
  • 1970-01-01
  • 1970-01-01
  • 2022-01-16
  • 2021-02-09
相关资源
最近更新 更多