查看原文
其他

使用Unity 2D制作简单的UFO游戏

2016-06-21 Unity官方 Unity官方平台
这篇教程将教大家使用Unity 2D功能制作一个非常简单的UFO游戏,适合Unity初学者以及对Unity 2D不甚熟悉的开发者们。 
第一步 新建项目设置场景

首先下载项目所需的资源,可以点击[阅读原文]进入论坛下载,或者在Asset Store中下载Unity官方的2D UFO Tutorial。

 


新建2D项目,在Assets文件夹下新建三个文件夹:Prefabs、Scripts、Scenes。将下载的资源导入项目,会看到Sprites文件夹。将Sprites文件夹下的Background和UFO图片拖拽至层级视图(Hierarchy),将UFO重命名为Player。如下: 


依次点击菜单项Edit > Project Settings > Tags and Layers,新建三个Sorting Layer分别命名为Background、Pickups和Players,然后设置各Sprite的Sorting Layer。 


将Player的Scale设为(0.75, 0.75, 0),如下: 


将Main Camera的Size设为16.5,背景颜色设为RGB(32, 32, 32),如下: 


将场景保存到新建的Scenes文件夹下,任意命名即可,本例中命名为Main。 
第二步 添加控制主角的脚本
首先为Player游戏对象添加Rigibody 2D组件。然后新建脚本PlayerController用于控制Player对象,脚本代码如下: 


依次点击Edit > Project Settings > Input设置控制键,如下:

 


将Player对象的Rigibody 2D组件的Gravity Scale属性设为0以防止Player向下坠落,并将PlayerController脚本的Speed属性设为10。 
第三步 添加碰撞
为Player添加Circle Collider 2D组件并将Radius属性设为2.15,如下: 



接下来为背景添加碰撞体,让玩家不要跑出墙壁。为背景边框添加4个Box Collider 2D组件,各组件属性设置如下:


 


第四步 让摄像机跟随主角
新建脚本CameraController绑定到Main Camera上,用于控制相机跟随主角移动。脚本代码如下: 


将Player游戏对象赋给CameraController脚本的player字段。

 
第五步 设置宝石
将Sprites文件夹下的Pickup图片拖拽至层级视图,将其Sorting Layer设为Pickup并添加Circle Collider 2D组件。然后新建脚本Rotator用于旋转宝石,脚本代码如下: 


将该游戏对象拖拽至项目视图(Project)的Prefabs文件夹下存为预设体,在层级视图复制出11个宝石对象。然后在层级视图新建GameObject命名为Pickups,并将这12个对象均拖至Pickups下,分别设置合适的位置,如下图: 


将Pickup预设体的Tag设为PickUp,并将所有Pickup对象的Circle Collider 2D组件的isTrigger属性勾选上: 


第六步 添加UI
右键点击层级视图,在弹出菜单中选择UI > Text新建文本,层级视图中除了Text外还会添加Canvas和EventSystem组件。将新建的Text命名为CountText,在检视面板中打开Rect Transform的锚点设置面板后按下Shift+Alt/Option键点选左上角,让Text自动吸附到界面左上角并选择合适的文本颜色,如下图: 

 

再次新建Text命名为WinText,将字体大小设为24,对齐位置设为中间并选择合适的颜色,如下图:

 


最后,将刚才新建的两个Text分别赋给PlayerController脚本的CountText及WinText字段,如下图:

 



到此就大功告成了,最后运行效果如下: 

 


很简单对吧,赶紧点击[阅读原文]下载素材开始自己动手制作吧!
延展阅读

Unity 2D新功能抢先体验!

Unity 2D之Tile Map使用指南

可视化调试物理碰撞体

轻松玩转Unity编辑器菜单扩展

WWDC上展示Unity制作的Tessellation Demo 


我们还会分享更多Unity相关的技术内容在Unity官方中文论坛(forum.china.unity3d.com),请保持关注!



点击“阅读原文”下载素材

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存