近日在做一个类似于ios手游《贪吃三国》的3D贪吃蛇游戏。
一、移动
在之前的项目中,移动运用的是Unity的AStarPathFinding插件。使每一个贪吃蛇元素的移动目标点为前一个元素,蛇头控制移动方向,发现效果不是很好。
后来查到了一个小游戏贪吃蛇算法原理,如下。
二、2D游戏、像素游戏贪吃蛇算法原理
红色是蛇,蓝色是食物
先来看看蛇的构造
可以看到,蛇其实是由1个1个正方体拼成的。每个正方体的左上角是他们的坐标。在程序中,我们可以用一个数组表示一条蛇。数组的每一个位置存放一个正方形的坐标
如:
snakeArr = [(10,0),(20,0),(30,0),(40,0)];
在画蛇的时候,我们只需要遍历数组,根据数组里面的坐标在画布上画出一个一个的正方体就变成一条蛇啦。
至于蛇的行走怎么办?如下一步,蛇往上走了。
若下一步往上走,则下一个点为数组首点的横坐标不标,纵坐标+10
nextPoint = new Point(snakeArr[0].x,snakeArr[0].y+10);
接着,我们在数组的头部插入nextPoint,然后把数组尾部的数据去除。数组变成这个样子:
snakeArr = [(10,10),((10,0),(20,0),(30,0)];
是不是和数据结构里面的“队”很类似?。头位置作插入,队尾作删除。
只要知道蛇头的移动方向,计算下一个蛇头点,插入蛇头,删掉蛇尾,就可以实现像素蛇的移动。
三、基于贪吃蛇算法原理的3D贪吃蛇移动
//Vector3 nextDirection 当前蛇头方向 上、下、左、右 //snakePosList 蛇的数组 snakePosList[0]蛇头 Vector3 nextpos = snakePosList[0]+nextDirection*1f; //插入下一个蛇头位置,删除蛇尾设置 snakePosList.Insert(0,nextpos); snakePosList.RemoveAt(snakePosList.Count -1); //利用TweenPosition,使角色向下一个目标点缓动 for(int i = 0 ; i < RoleList.Count ; i++) { RoleList[i].tp = TweenPosition.Begin(RoleList[i].gameObject,1f,snakePosList[i]); }
相关推荐
Unity日志输出插件,在手机和pc上均有用,能很清晰的看到日志打印,非常好用。 使用这个工具,你可以很容易地在游戏内部检查你的编辑器控制台日志!在移动端同样有效! 支持unity2017.4.29 or 更高版本
贪吃蛇大作战的复刻单机版,含打包apk,适合新手学习,
unity--期末大作业--3D汽车模拟驾驶工程文件 unity2019 包括所有素材模型背景图片音乐源代码等 其中有六个场景,三个UI场景三个地图场景 UI界面,交互,3D,场景转换效果 wasd控制汽车,空格停止,shift粒子加速,L...
unity-横向比较unity3d与其他的游戏引擎的优势与不足
vuforia-samples-advanced-android-ios-unity-4-2-3.zip官网下载太慢了,放在网盘方便大家下载
在 UnityPlayerActivity 类,存在 mUnityPlayer.quit() 方法,...查看 unity-classes.jar源码,发现quit()方法会结束整个进程。于是修改jar包,屏蔽结束进程代码,就可以实现退出当前Activity,而又不会退出整个应用。
利用unity3d这款游戏制作简单的贪吃蛇小游戏,喜欢的可以下载看下,代码完整,注释友好,每行都有注释
spine-unity-3.8-2021-01-08.unitypackage
为了速度慢下载失败或者无法下载的人提供,这是最新的vuforia unity sdk 6.2.10
vuforia-samples-core-unity-6-2-6 These samples show how to build apps using the following core features of Vuforia. Image Targets VuMark Object Recognition Cylinder Targets Multi Targets User ...
dnspy所需的mono.dll
vuforia-unity-6-0-117.unitypackage 链接地址: https://developer.vuforia.com/downloads/sdk#downloadModal 有时候下载速度比较忙,所以上传一份
Unity 3D贪吃蛇游戏源码.
unity4.3.4f1-----unity3d RPG游戏《外星人》完整源码下载.zip unity4.3.4f1-----unity3d RPG游戏《外星人》完整源码下载.zip
unity3d 贪吃蛇游戏,3d版本的贪吃蛇游戏,可进行空间运动
spine-unity-3_5-beta2.unitypackage
Unity的拍照和录像插件Unity-NativeCamera 相关文档参考:https://lab.uwa4d.com/lab/5b561edcd7f10a201fd83f24
Unity-Resource-Checker-master将开发后的工程中的未使用到的资源进行查找,优化项目工程的容量大小和减少冗余。
unity--3D-课件-第02章-Unity脚本程序基础知识,用于制作Unitynull等