SnakeGame Conclusion

贪吃蛇总结

游戏效果:实现了贪吃毛毛虫(贪吃蛇改成了毛毛虫)连续行走,非一格一格行进,每吃一个苹果就在尾巴后面长一个身体结点。身体结点像铰链一样连在一起行进;当毛毛虫撞到墙壁反弹,并调整头的朝向为当前行进方向;鼠标按下,控制蛇头运动,拖动鼠标改变移动方向,松开鼠标停止控制,在同一鼠标点击位置继续按下鼠标并拖动,保持上一次鼠标点击蛇头朝向;游戏结束判定规则是蛇头撞到蛇身(除去紧挨蛇头的身体结点)则死亡。

开发工具:Unity3D,Playmaker

1.贪吃虫身体结点用Configurable Joints铰链组件连在一起,后一个身体结点的rigidbody连在上一个,每一个Configurable Joints铰链只允许绕Y轴旋转,X,Z轴限制旋转,调整Spring弹簧力和Damper阻尼。如图1.


控制由于贪吃虫头可能朝各个方向运动,身体结点不在一条直线上,可能在某一运动时刻,整个贪吃虫身体成曲线形状,此时贪吃虫吃到苹果长一个身体结点,新的结点与上一个结点成一个角度,不在正后面。解决办法:新结点放在上一个结点局部坐标系下Z轴负方向一个身体结点长度,再放到全局坐标系下,再用Look At 函数是新结点指向上一个结点,使其处于正后方。最终贪吃虫身体可弯曲,并能够恢复直线形状。

2.当带有物理特性(Rigidbody,gravity)相接触的Gameobject物体太小,transform/scale 在1以下0.1左右,物体会下陷到Floor中,调整Physics Setting中的Min Penetration For Penalty  最小渗透惩罚值为0.

.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值