小编Shi*_*zul的帖子

如何在libgdx中创建轨道?

我正在制作一个太空游戏,我想制作一个小型无人机飞船轨道我的更大的玩家船.我不完全确定如何使它成为一个完美的圆圈轨道.到目前为止,我可以让它以钻石形状移动,但我试图纠正圆形的结果却以失败告终.

基本上,我正在做这样的事情:

float centerX = ship.getX() + (ship.getWidth() / 2);
float centerY = ship.getY() + (ship.getHeight() / 2);
float droneX = drone.getX();
float droneY = drone.getY();
float radius = drone.getRadius();
float xDiff = Math.abs(droneX - centerX);
float yDiff = Math.abs(droneY - centerY);
float moveByX = Math.abs(radius / (xDiff == 0 ? 1 : xDiff) / smoother);
float moveByY = Math.abs(radius / (yDiff == 0 ? 1 : yDiff) / smoother);
Run Code Online (Sandbox Code Playgroud)

然后我通过moveByX和moveByY值移动无人机.正如我所提到的,它在钻石形状下工作得很好,但是如何改进这个来计算正确的圆形图案呢?

java geometry android libgdx

1
推荐指数
1
解决办法
2128
查看次数

标签 统计

android ×1

geometry ×1

java ×1

libgdx ×1