纳金网

标题: 使用Google搜索方式建立Unity地形 [打印本页]

作者: 艾西格亚    时间: 2013-12-11 13:49
标题: 使用Google搜索方式建立Unity地形
适用版本:Unity 4.2.0以上

很多朋友在制作地形时常会遇到一个问题,就是在开始的时候很难掌握地形的笔刷工具与之类,甚至是何时应该拉高与降低都显得有些困扰,而有的人选择用Terrain Toolkit这类的插件来生成较为精致的地形,或是用World Machine制作出地形后输出到Unty使用,不过对于不熟悉这些工具的朋友来说,这些流程似乎是过于复杂了。

那么有没一种比较快捷的方式?Yes,接下来我们要介绍的一种方式,可以在最短的时间内做出一个地形的基础样貌后,再配何地形工具加以调整,也许您会问有如此容易吗?

是的,让我们继续看下去是如何做到的,首先是在Google的搜索框(图片搜索)里面输入island heightmap,简单的理解就是让谷歌帮我们找出Unity使用的地形高度图。


1.png


搜索后出现一堆黑白灰阶的图档,需要注意的是,Unity并没有办法直接读取搜索出来的JPG文件,我们还需要在Photoshop进行一个加工处理才行。

2.png


找到适合的图片后先存成JPG文件,然后在Photoshop里面开一个新的文件,特别注意的地方是,Color Mode必须设置为Grayscale的灰阶8 bit模式,Width与Height可设置为512x512或是1024x1024的尺寸。

3.png


接着将搜索出来的JPG文件(可下载本帖子附件)直接拖曳到新的图层内,如图所示,我们可根据图片的情况进行亮度与对比度的调整,这里有一个概念务必要注意,图片里的黑色部分为地形凹陷的地方,反之越偏白的地方则是呈现出高度的效果。

5.png


调整好之后进行存档,将文件格式设置为RAW,这是Unity使用高度图制作地形的唯一认可的文件格式。

6.png


Raw输出时采用默认值即可,按下OK后进行文件输出。

7.png


回到Unity,新建一个地形,我们使用的是Unity 4.3的版本,地形的工具位置在GameObject > Create Other > Terrain。

8.png

默认的地形为2000x2000x600的单位,将高度改为200的数值即可,然后按下Import RAW
将Photoshop储存的高度图载入。

9.png 10.png

导入时将Depth设置为Bit8,Width与Height对应于Photsohop创建文件的尺寸,所以这里我们输入的是512x512,Terrain Size 为2000 x 200 x 2000,Y的数值即是地形的高度,也可以在导入后进行高度的调整。

11.png


如图所示,这是将高度图导入后的地形效果。

12.png


掌握地形的生成要领后,现在换另一张高度图试试:

14.png


运用相同的步骤将高度图导入,如图所示,地形表面在几个步骤内即可快速的生成。

15.png


使用绘制贴图工具进行地形表面的效果处理,这里我们就不多做介绍了,论坛里已经有不少的地形工具使用教程,唯一注意的是地形已经可以添加法线贴图,作用是让表面呈现出更为真实的效果。

16.png


如图所示,在地形表面刷上了几层纹理后,将天空盒的背景也一并加上,现在看起来的效果似乎还不错。

18.png
19.png


在RenderSerttings里面勾选雾化,将Fog Color设置为与天空交界处相同的颜色,Fog Density采用0.001的数值,然后将Ambient Light的环境光设置为天空蓝,目的是模拟出整个环境收到大气作用所产生的自然效果。

20.png


如图所示,这是地形与环境在接受雾化后产生的效果。

21.png

地形上再添加一些装饰用的小物件是很重要的,例如碎石与花草这类的模型,由于Unity提供的地形用资源不是很多,这部分在纳金网Unity论坛里面提供了不少的环境专用资源包,大家可以下载后试用,最重要的就是,如果您觉得该资源很不错,请到Unity资源商店进行购买。

如图所示,在加上一些小物件后,场景内的效果明显的有较大的变化,至于在一些细节的处理上,仍需根据游戏的要求再进行后续的工作,我们会建议在场景放置第一人称相机,以便于对场景的细节进行更多的观察与调整。

23.png


ashillion.zip

27.03 KB, 下载次数: 115


作者: hariboot    时间: 2013-12-11 14:09
技术贴啊。。。
作者: huhumark    时间: 2013-12-11 14:46
以前就有过用Google earth来制作 的,这个文章不错
作者: 烟雨    时间: 2013-12-11 17:54
支持一下,内容不错
作者: ZackD    时间: 2013-12-11 18:37
方法可以参考一下
作者: 王者再临    时间: 2013-12-12 03:14
简单而实用,不错
作者: 宁唯是宁唯    时间: 2013-12-12 10:53
1111111111111
不错,能从google直接获得一定经纬度范围内的高度jpg图就更好了。
当然可以通过dem数据用arcmap等软件来提取~~~
作者: pz789as    时间: 2013-12-12 11:00
学习了。。。
作者: acomlf    时间: 2013-12-12 12:24
好教程,学习了。
作者: 恶色狼    时间: 2013-12-12 16:47
谢谢分享。。。。
作者: qidaozhilong    时间: 2013-12-23 21:21
不错的文章,推荐
作者: hariboot    时间: 2013-12-24 09:13
很好的方式啊,学习了
作者: 441490848    时间: 2013-12-28 16:39
谢谢分享...........
作者: 刀锋狼    时间: 2013-12-28 18:15
挺好的教程,不错
作者: 52530740    时间: 2013-12-29 13:48
无法解决山体比较软的缺点。
作者: 大大虾    时间: 2013-12-29 19:44
好东西!~学习了!~感谢楼主!
作者: advcyc    时间: 2014-3-12 18:20
谢谢分享!
作者: 张鱼怪    时间: 2014-3-12 23:28
开了眼界!是我等新手的福利啊!
作者: seewe    时间: 2014-3-29 11:01
谢谢楼主分享
作者: uitgh    时间: 2014-3-29 21:51
学习了学习了
作者: huhumark    时间: 2014-3-30 08:11
强大的教程谢谢
作者: jdxz9933    时间: 2016-11-11 10:06
绝对的技术贴,好东西!!!




欢迎光临 纳金网 (http://wwww.narkii.com/club/) Powered by Discuz! X2.5