siki老师,贪吃蛇的身体我已经实现了。我的做法是在实例化蛇身的时候,先获取蛇头的位置,第一节身体实例化出来,放在蛇头左边一定间距,第二节身体实例化出来,放在第一节左边一定间距,以此类推,直到蛇尾。
移动的时候,先获取蛇头的位置,蛇头向当前朝向的正前方移动,保存第一节身体的坐标,第一节的坐标改为之前获取的蛇头的位置,保存第二节身体的坐标,第二节的坐标设置为之前获取的第一节的位置。
加速移动的话,除了蛇头自主移动之外,蛇身的坐标多加上一个坐标差值就好了。
现在头疼的是,贪吃蛇吃了一定的食物,蛇身变粗,如果蛇身间距不变的话,很显然蛇身会很拥挤,效果不好。
我想请教的是怎么根据不同蛇身的宽度去动态设置蛇身间距,因为蛇一直在移动。
我尝试的做法是:先获取方向,蛇头与第一节的方向,第一节与第二节的方向,第二节与第三节的方向.....
然后蛇头和所有的蛇身的localscale变大。
之后在for循环中重新设置位置:设置后的位置=(设置前的位置-间隔变量*方向),也就是在原来的方向上移后一点。
但是最终的效果却并不好。
是不是我的算法有不妥之处?
劳烦老师费心提供方法,谢谢!