在三维游戏世界中,通常会将丰富多彩的游戏元素融合在一起,比如游戏中起伏的地形、郁郁葱葱的树木、蔚蓝的天空、、凶恶的猛兽等,营造出身临其境的游戏沉浸感,让玩家置身游戏世界,忘记现实。
地形作为游戏场景中必不可少的元素,作用非常重要。Unity 3D 有一套功能强大的地形编辑器,支持以笔刷方式精细地雕刻出山脉、峡谷、平原、盆地等地形,同时还包含了材质纹理、动植物等功能。
通过地形编辑器可以让开发者实现游戏中任何复杂的游戏地形。
不可否认,可玩性是衡量一款游戏成功与否最主要的标准,这一点从《魔兽世界》的成功就可以看出。
玩家在玩一款游戏过程中第一印象是非常重要的,第一印象决定了玩家是否想继续玩下去,在玩家玩下去的同时才能展现出游戏的可玩性,所以游戏的场景设计也是评价一款游戏的标准。
场景涉及人物、地形以及各类型的建筑模型。大多数人物模型和建筑模型都是在 3ds Max、Maya 等专业的三维模型制作软件中做出来的。
虽然 Unity 3D 也提供了三维建模,但还是相当简单。不过在地形方面 Unity 3D 已经相当强大,下图就是基于 Unity 3D 开发的游戏场景。
Unity 3D 创建地形
地形的创建十分简单。执行菜单 GameObject
→ 3D Object
→ Terrain
命令,窗口内会产生一个平面,该平面是地形系统默认使用的基本原形。
在 Hierarchy 视图中选择主摄像机,可以在 Scene 视图中观察到游戏地形。
如果想调节地形的显示区域,可以调整摄像机或地形的位置与角度,让地形正对着我们。
地形参数
Unity 3D 创建地形时采用了默认的地形大小、宽度、厚度、图像分辨率、纹理分辨率等,这些数值是可以任意修改的。
你可以选择创建的地形,在 Inspector 视图中找到 Resolution
属性面板
Resolution 属性面板的参数列表。
参数 | 含义 | 描述 |
---|---|---|
Terrain Width | 地形宽度 | 全局地形总宽度。 |
Terrain Length | 地形长度 | 全局地形总长度。 |
Terrain Height | 地形高度 | 全局地形允许的最大高度。 |
Heightmap Resolution | 高度图分辨率 | 全局地形生成的高度图的分辨率。 |
Detail Resolution | 细节分辨率 | 全局地形所生成的细节贴图的分辨率。 |
Detail Resolution Per Patch | 每个子地形块的网格分辨率 | 全局地形中每个子地形块的网格分辨率。 |
Control Texture Resolution | 控制纹理的分辨率 | 把地形贴图绘制到地形上时所使用的贴图分辨率。 |
Base Texture Resolution | 基础纹理的分辨率 | 远处地形贴图的分辨率。 |