2015年12月14日14:49:59 BeatPlane ProjectLog
1.新建项目
2.导入资源
3.把背景图片拖到scene窗口中
4.并设置位置归零
5.修改设置为手机端
6.在Game窗口中把分辨率改为 480x800
7.在MainCamera中把Size修改为4,这样背景就可以在摄像机中全屏显示了
8.复制一个背景,拖到上面,使它们两个背景无缝连接
9.为背景添加脚本,使其能做成一直在运动的动画
代码如下:
保存,运行测试,发现背景可以无缝移动。
10.从素材文件夹里拖一个飞机(玩家)到Project 面板,但是不会动,下面添加代码使主角有动画
代码如下:已添加好注释
注,记得把素材里的主角动画图片拖到代码中,使数组初始化
保存,测试,玩家的飞机已经有动画了
11.新建一个空物体,作为玩家飞机的子物体,位置移动到飞机头的位置,用来在此生成子弹,并在此物体上挂一个shoot 脚本
11.1脚本代码如下:
12.把子弹作为Perfabs(预置体)并挂上Bullet脚本
这里可以给2种子弹指定不同的速度
13.Bullet 脚本代码如下:
14.同样的给左边和右边的“发射器”挂上Shoot(生成子弹)的脚本,并指定要生成的子弹为子弹2号,这里也可以给他们不同的 rate(生成速率)
保存,运行测试一下
OK,没有问题。
15.把素材里的敌机拖到场景中。并挂上脚本,设置成预置体
16.代码如下:
注:三种类型不同的飞机,可以设置不同的生命,不同的速度
17.新建一个空物体,改名为Spawn,用来源源不断生成敌机。把位置移到上面的屏幕之外
17.1 并挂上脚本
17.2 代码如下:
18.同样的方法,把奖励物品也拖到场景中,并挂上 Enemy 的脚本,修改一下速度,并设为预置体
18.1 并在Spawn 脚本中加上 随机生成 奖励物品的代码,如下:
还有别忘了在场景中指定要生成的物品种类
19.通过鼠标按下拖动控制飞机的移动,有点绕。
**主要逻辑就是:一直不停的获取鼠标的位置,此时获取的位置是相对于屏幕的坐标,屏幕的左下角为0,0. 如果玩家按下鼠标,则 记录按下时的坐标转换成世界坐标, 此时拖动鼠标(鼠标还是按下的状态,并还在不停的获取鼠标的位置存在Input.mousePosition中)会产生一个偏移(鼠标现在的位置减去鼠标按下那刻所在的位置),然后在用飞机的位置加上这个偏移就是飞机移动的动画!
if判断为假就是鼠标按下那刻鼠标所在的位置,按下以后进入if判断为真后就开始执行上面所描述的内容。**
19.1 边