2D指南针定位/逻辑

正如标题所述,我正在遇到很大的问题。我正在尝试使用Lua作为插件语言为游戏创建这个HUD。

我有一条具有特定宽度的条形图,在这条图的顶部,我正在尝试绘制另一条包含字母的条形图,表示玩家面对的方向。我有玩家面对的0-360度角度,但我不知道从哪里开始制作一个看起来像这个底部的图片的指南针条:\nhttp://s32.postimg.org/62kcq52it/firefox_u_ZBy_E_90965_229_70.png

因此,当玩家改变角度时,条形图也会移动。我曾考虑过制作一个带有字母的条形图,并某种方式将其推远并在条形图的特定位置上绘制字母,然后根据角度将条形图推 x 像素,但是我意识到这样不会使字母重复出现。

有没有人有建议从哪里开始呢?

点赞
用户1847592
用户1847592

L 为你指南针条的像素宽度。

你应该准备一个你的双指南针的图片:

N - E - S - W - N - E - S - W - N

这张图片应该有 4*L 像素宽度。

现在,如果你知道玩家朝向的角度 A

A = 0   看向 N
A = 90  看向 E
A = 180 看向 S
A = 270 看向 W

你可以计算出应该在指南针条上显示的图片的坐标:

x_left < x < x_rigth

其中:

x_left = math.floor((90 + (A + 180) % 360) * L / 180)
x_right = x_left + L
2016-05-05 23:53:41