【发布时间】:2022-11-30 17:24:35
【问题描述】:
我正在尝试在 Unity 中使用 C# 创建一个简单的路径系统。
到目前为止,一切正常。但是要创建一个路径跟随者,我需要跟随者每一帧应该移动到的位置。路径总是有一个半径、一个起点和一个长度,其余的是未知的。
现在,我怎么计算路径跟随者在每一帧中的位置,即圆弧上的点?我需要一个函数,它将跟随者在路径上的百分比位置作为参数,并返回场景中的全局位置。 举个例子:给定圆弧的长度 L,半径 r 和起点 A。我要计算的是随机点 D:
我自己计算的点是一团糟,不管用,尽管我已经做了一些研究。所以我正在寻找一个简单易懂的解决方案。
【问题讨论】:
-
只有半径、起点和长度是不可能的,因为它不描述单个特定的弧。您还需要相应圆的中心点。
-
@JonasH 但是在这种情况下我们可以用起点和半径计算点 B,对吧?B = (5|0)
-
@jjb 所以给出了 B.Y 坐标,不是吗?
-
@MBo 计算时,是的。
-
只有关于从起点到中心的关系的附加约束。如果你想允许任意弧,你不能有这样的约束。