Part One.
1.环境搭建
打开unity,先把坐标系设置成仅有y轴和x轴,完成后要记得按Ctrl+S保存。如下图所示。
创建两个cube分别命名为wallUp和wallDown,并设置相等的大小。运用一个空物体Create Empty把这两个cube包裹起来,命名为wall。再点击Main Camera里的背景颜色,将背景颜色改为纯色。将透视图改为Orthographic,则可以更清晰的看到位置的变化。
再创建一个cube,命名为player。
到此,环境就搭建好了,如下图所示。
2.简单的移动
首先先建立三个文件夹:Material、Script和预制体prefab。点击player给它添加刚体和脚本playmove使它运动起来。代码如下:
给wall添加脚本wallControl并与player建立关联,使墙可以跟随player的运动而运动。
最后做一个相机跟随。点击Main Camera并添加脚本cameraControl。
Part Two
先点击player,找到Mesh,将player由方块变成一个球体。
1.障碍物的生成
添加一个cube,命名为barrier,可以放置在下地板上。使用instantiate实例化:先创建一个空物体命名为barrierControl,该空物体可以对barrier进行控制和管理。将barrier拖到预制体prefab里,点击barrier按Ctrl+D复制生成另一个barrier。紧接着给barrierControl添加一个脚本BarrierControl,该脚本里包含了自动生成障碍物的代码及随机自动生成的障碍物的大小与位置的代码。
2.自动销毁
创建一个cube,命名为Trigger。将他移至小球移动方向的反方向的某处,将他的高度设置在将近上下两面墙之间的距离(千万不能碰到上下两面墙)。如图所示,最左边的白色方块是Trigger。
如下图所示,将Trigger里的这两项删除,使它不可见。
点击下图左上角的图标给Trigger做标记,这样就可以知道它所在的位置。
下图中橙色图案就是显示 Trigger所在的位置。
再给Trigger添加一个触发器(勾选Is Trigger)并将Trigger拖到wall里。再添加一个刚体,并去掉重力。
给Trigger添加一个脚本AutoDestroyBarrier,该脚本的作用是当碰撞检测后,被触发的物体会消失。



