有时间学习Unity5练练手, 一个贪吃蛇小Demo
简单的2D场景, 对象都是Sprite,需要设置前后的显示层级,从蛇头到蛇尾的Order in Layer 的值是1000 递减1,所以显示的效果是具有鳞片的层叠。
蛇的每一节都有一个脚本 SnakePart.cs 记录这节的位置、方向包括计算值。
蛇没吃一个苹果,就会实例化产生一节, 其中新产生的这节上有一个新脚本 NewSnakePart.cs 主要的作用就是初始化把这节添加到蛇的末端包括初始化位置、方向。
GameManager.cs 单例类,List<SnakePart> 这是蛇的所有节, 还有随机产生食物,游戏结束、重新开始,每一节的位置换算(是从尾到头的换算)。
最后就是PlayerScript.cs脚本了, 被挂在蛇头上,先说做游戏的操作吧,就是鼠标(或手指)拖动蛇头,这样蛇就跟随移动了。 那么这个脚本的作用就是计算每一节应该向前移动的距离和方向。 还有就是碰撞检测了,检测吃苹果、 撞墙和咬到自己。
游戏中只有蛇头是既有rigidbody 又有collider, 其他只有collier , 这是unity物理引擎的碰撞检测的条件,必须双方有碰撞体,并且是运动的物体必须有刚体。
至于GameOver的UI 就是使用Unity5 中原生UGUI 摆布了一下。
脚本先对于Unity5之前的版本差别较小。
【完】
原文地址:http://blog.csdn.net/u010019717/article/details/45066481