gpt4 book ai didi

java - build 雷达

转载 作者:行者123 更新时间:2023-11-30 04:34:41 27 4
gpt4 key购买 nike

我想尝试用 Java OpenGL 构建雷达。基本上,在该方法中,您传递玩家的当前位置、玩家面对的角度以及敌人的位置。如果敌人就在正前方,那么红点(象征敌人)应该在圆圈(雷达)的顶部,可以说是0度。如果直接向右,红点将是 90 度,等等。基本上,我尝试找到直接在玩家前方射出的 vector 与从玩家到敌人的 vector 之间的角度。我到底该怎么做呢?我环顾四周并找到了 atan2() 的建议,但还不确定如何使用它。如果有更快、更有效的做事方式,也请告诉我。

编辑:我使用了绘制点的方法,而不是点积和余弦等,并且我使用玩家的位置作为原点。但是,如果距离大于使用距离公式选择的数字 70,我如何使敌方点出现在雷达边缘?任何低于 70 的东西都会在雷达范围内,但任何超过 70 的敌人,我希望敌人只是在雷达边缘盘旋,而不是让敌人的点消失。

最佳答案

假设你的玩家和敌人在一些 2D 空间(甚至 3D 空间,但他们在 2D 平面上移动,例如水平地面)中具有坐标,我认为更简单的方法是直接在玩家/敌人实体的位置到雷达上,然后根据玩家当前相对于正北面的角度,以玩家为原点在雷达上应用旋转变换。

关于java - build 雷达,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13780042/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com