0

我正在开发我的游戏 - iOS 版 Snake。

我的开发已经过了这个阶段,但是我想对它做一些改进。经过几次尝试和错误,我完全忽略了 SpriteKit 提供的物理/运动和碰撞检测,我继续使用自己的实现。也许在你的帮助下,我可以重构游戏的这一部分。

我的蛇可以向所有可能的方向(360 度)转动。没有重力。如果您希望与现有 SpriteKit 实现的代码一样多,您将如何设置您的物理实体?

我认为有两个重要的部分。

首先 - 关节。蛇由多个实体构成。所有的身体都只是相互跟随——经历了头部前段时间的所有点。我认为最好的接头是销接头?我在相邻物体之间使用了带有锚点的 Pin 接头。但是这种设置导致蛇身体的其余部分改变了头部的物理特性。不应该是这样的。我尝试将重量更改为零,将线性和角度倾倒最大化。结果永远无法接受。

第二 - 控制运动。蛇的运动是恒定的。用户通过按下左右按钮开始向右或向左轻轻移动蛇。你认为我应该在更新方法中每次将蛇的速度重置为我的恒定值吗?还是我应该玩力脉冲和扭矩?仅当用户持续按下屏幕时才会发生转向 - 反转蛇需要几秒钟(如“掉头”) - 旋转它怎么样?

任何建议表示赞赏。此致。

4

0 回答 0