较传统的蛇游戏使每个片段在其先前位置之前取代该片段。问题是我正在编写一个“平滑的”蛇游戏,因为每帧头部的移动量很小。
以前,我有turningPoint
在头移动时创建的。当每个先前的片段碰到该点时,它们都朝着turningPoint
中存储的方向转向。问题在于,我必须不断地为每个turningPoint
的每个分段定界,因为运动并不完全平滑(总是有一个分段完全错过了该点并且没有转动的机会),所以累积了误差,并且这些段不是“连接”的,而是许多恰好彼此相邻移动的对象。
我的问题是:我该如何编程一条能够有效有效转向的光滑蛇形?
最佳答案
通过声音,您希望每个段都在几帧后回溯头部经过的点。在这种情况下,只需使蛇数据结构成为头部所处点的列表即可...然后绘制蛇,遍历该列表,跳过每10个点,然后在其中绘制一个段。