【发布时间】:2021-07-31 09:29:08
【问题描述】:
我有两个大小差异很大的对象。我想找到这些物体之间的最短距离。例如,如果我在墙前有一把小椅子。我想要椅子和墙壁之间的距离。我尝试使用 Vector3.distance,但它使用世界坐标进行计算。我尝试使用对撞机来实现这一点,因为我在某处读到它是解决方案,但不清楚如何去做。有人可以帮忙吗?
我添加了一张图片来说明我想要什么。红线是我使用 Vector3.Distance 时得到的距离,但我想要的距离是绿线。如果游戏中有很多物体,我怎样才能得到我选择的两个物体之间的最短距离。
【问题讨论】:
-
用于两个对象枢轴或中心之间的距离Vector3.Distance。您可能还会发现有用的 Collider.ClosestPonit 和 Collider.ColsestPointOnBounds。对于其他特定的“最短距离”,您可能需要更好地解释您想要什么,并可能自己编写代码。
-
@derHugo 我检查了它,但它特定于两个对象。如果有意义的话,我希望它更通用。
-
@rustyBucketBay 我尝试了最接近点森边界,但我不明白如何实现它。如果可能的话,我能找到两个物体沿一个轴的距离吗?