介绍:
在本篇教程中,我们将创建一个非常简单的无尽跑动游戏,你将学会:
- 生成一个分层的背景
- 重用对象
- 使用简单的物理
- 检测输入以使player跳跃起来
- 实现力量提升
- 写个小的事件管理器
- 根据需求打开和关闭东西
- 制作一个最小的GUI
假设你已经了解Unity的编辑器,并且了解基础的C#脚本。阅读了时钟教程就可以了。图表教程也有用,但不是必须的。
注意我将会省略经常出现的相同的代码块,只展示新的片段。新代码的文本将会很清楚。
(注:此为游戏截图,点击此处查看原网页的试玩)
游戏设计
在开始之前,需要先决定在游戏中放些什么。我们将制作一个简单的2D横向卷轴,但是那还是很模糊,我们再缩小一下范围。
游戏中将有一个奔跑者(runner),冲向屏幕右侧。玩家需要从一个平台跳到另一个平台,坚持的越长越好。这些平台可以有不同的风格,让runner加速或减速。还将包含一个独立的力量提升,助力奔跑者在半空中跳跃。
图形方面,将使用cube和标准的粒子系统。Cube用来做runner、力量提升、平台,以及地平线背景。用粒子系统添加追踪效果,用很多漂浮的东西实现更好的速度感和深度感。
不使用到任何的声音和音乐。
设置场景
新建一个项目,在这个项目中,使用默认的2 by 3编辑器布局比较好,当然你也可以使用任何你偏好的布局。游戏的画面比例是16:10,在游戏视图中选择这个比例。
这个游戏是2D的,但是我想保持一点3D的感觉。正交相机并不适用于3D,所以我们使用透视相机。这样还能通过在各种不同距离放置物品获得多层卷动背景。
假设前景在depth 0,在depth 50和depth 100各有一个背景层。在这三个大方分别放置三个cube,并用它们作为引导来创建场景。我挑选了视角和颜色设置,你可以自由实验,选择你所喜欢的。
添加一个directional light(GameObject / Create Other / Directional Light),rotation为(20, 330, 0)。这个光源照亮右边,由于是定向光,所以位置并不重要。
把Main Camera的Field of View减少到30,位置为(5, 15, -40),旋转为(20, 0, 0)。并把背景色改为(120, 180, 250)。
Light 和 camera.
创建三个cube (GameObject / Create Other / Cube) ,Z轴的位置分别是0、50和100.分别命名为Runner、Skyline Close、Skyline Far Away。把两个skyline cube的对撞机移除,因为不需要那些。
在Project视图中通过Create / Material创建material,命名为Runner Mat等,然后拖拽它们赋值到cube。我使用默认的白色diffuse shader,(100, 120, 220) 和 (110, 140, 220)。
为了把东西组织在一起,在Project 视图中通过Create / Folder创建Runner 和 Skyline文件夹,把材料放在里面。
Hierarchy、project、 and game 视图
原文链接:http://catlikecoding.com/unity/tutorials/runner/
建议使用电驴(eMule)下载分享的资源。
说明:本教程来源互联网或网友分享或出版商宣传分享,仅为学习研究或媒体推广,wanshiok.com不保证资料的完整性。
|