在garry的mod中,我们有一个矢量metatable:Vector
这更像是一种数学问题
我有2个向量:玩家位置(1)和一个固定在地图上(2)
我想在固定位置上绘制文字,但因为它会在我不能的内部。 那么如何将向量2移向玩家(1)。我可以使用角度类型:Angle。我可以重新缩放文本。
提前谢谢!
答案 0 :(得分:2)
我猜你所说的是关于点,而不是传统意义上的矢量。 让我们称之为玩家为V1的点,固定点为V2,然后表示从固定点到玩家D的距离的向量是:
D = V1 - V2
现在,我们将V2移动到更接近玩家的新位置,比如说c:
V2 = V2 + c * D
因此,如果您想将文本的位置移动到靠近播放器的十分之一处,则设置c = 1/10。
例如,使用您的库我们可以直接修改固定点向量(2):
d = v1
d:Sub(v2)
d:Mul(0.1)
v2:Add(d)
上面的代码会将固定点v2移近十分之一。如果您可以检查文本是否被某些东西阻挡,您可以一步一步地移动它直到它没有被阻挡。