今天带来一个在自学Unity3D过程中写的第一个2D打飞机小游戏。代码写得不好,功能也很少,主要是为了记录学习心得,也希望各位能够多给些指导。后续应该会有优化和完善游戏功能。
闲话不多说,先来分析下游戏:
几乎没有什么功能,没有UI。主要有玩家方向键控制飞机移动,空格键射击,敌人被击中后销毁。
1.创建工作层
为了使游戏对象在场景中的层次不会错乱,可以创建不同的工作层来管理游戏对象,从而使2D游戏场景的层次更加分明,游戏对象之间的操作也更加方便。
依次选择菜单栏中的Edit -> Project Settings -> Tags and Layers (或者直接单机编辑器右上方的Layers -> Edit Layers),在Inspector视图中,单击Sorting Layers,添加如图两个Layer
顺便简单说下layer和sorting layer的区别:
layer主要通过光线投射来选择性地忽略碰撞器,或者添加碰撞功能。而sorting layer就是一个渲染层级的顺序的控制。决定Unity渲染关系的层级顺序是 :Camera ,soting layer sorting order。
2.创建背景
Assets文件夹中,导入Sprite文件夹,里面是我们需要用到的图片资源
直接将背景图片拖拽到Scene中,该图片自动成为一个精灵,改名为sky。将其sorting layer设置为background, order设置为0。为了实现背景循环滚动的效果,我们添加再添加两张背景图,上下叠放。
因为背景图片每单位100像素,MaxSize2048,所以每张图片高度应该是20.48
三张背景图的y坐标分别是20.48,0,-20.48,这样就可以将背景图无缝叠在一起。创建一个