让玩家在LibGDX中向前移动(面向前方)

时间:2014-09-26 01:02:17

标签: java libgdx

我目前正在开发LibGDX游戏。您可能已经看过另一篇文章。我已经解决了这个问题,但现在,我面临的事实是,我似乎无法将我的玩家移向(它总是向上移动而不是指向它的前方)。我已经尝试了一切,从使用Box2D到我在网上找到的建议使用trig功能的答案。有没有人设法做到这一点?

1 个答案:

答案 0 :(得分:0)

通常通过设置x(左和右)和y(上下)坐标来完成对象的移动。
要知道如何操纵它们,你需要知道他的方向 在自上而下的游戏中,它可以是Vector2,标准化的Vector(长度为Vector = 1),它会为您提供x和y方向的相对移动。在平台游戏中,它可能只是boolean,它定义您是否面向严谨或左侧。然后通过跳跃和其他“上升力”定义上/下运动。和万有引力。

我认为在你的情况下这是一个自上而下的游戏,所以你需要一个Vector2 当你rotate你的角色时,你需要rotate Vector2来。为确保您的Vector2已标准化,请在操作后调用nor()updaterender方法中,您应该像这样设置角色的x和y坐标:

player.x = direction.x*delta*speed;
player.y = direction.y*delta*speed;

deltaGdx.Graphics.getDeltaTime()speed是你的播放器的移动速度。

希望有所帮助