多米诺 发表于 2012-11-3 18:19

Unity3D 地形制作教程

Unity3D手册中介绍了两种地形制作方法:
  一、在SceneView中使用height tools直接绘制
  二、使用外部工具制作的heightmaps
  直接绘制地形很简单,不过只适合小面积地图的制作,对于真实游戏项目来说,这样拉地形实在太复杂,一般我们都会使用外部工具,比如PS,比如max来制作高度图,然后导出为一张灰度图,在引擎中将其转换为地形。
  Unity3D也支持了这种做法,即导入HeightMap的方式,不过对HeightMap的格式有一个限定,必须是16bit的RAW格式灰度图,但是除此之外手册中再没有更多的描述。
  没关系,Unity3D提供了将地形导出为HeightMap的方法,我们可以做一张小地图将其导出来,看一看就知道了。
  如下图所示,将地形长宽高都设定为2个单位,地形精度设定为33,这个数值是能够设置的最小值了。这样就表示在一个单位内会有17个高度值,即16条边。然后把这个地形导出为16bit Raw格式文件。


按照上面的数据,这个raw文件将会由33 * 33个16bit数据构成,所以文件大小应为 16 * 16 * 2 = 2178字节。导出来的文件也确实如此,证明我们的推断是正确的。
  注意这里的Heightmap Resolution一定是2的n次幂加1,至于为什么会这样,找一个介绍HeightMap的文档看一下就明白了。
  既然验证了我们的推断是正确的,那试着在PS中创建一张HeightMap放到Unity3D中看看。我们创建的HeightMap大小为129 * 129象素,如果我们让一个Unity3D单位由4个象素点构成,那么地图大小则为 (129 – 1) / 4 = 32,即32 * 32,高度值不需要太大,高为12就够了。
  导入到Unity3D中后刷上一层Texture,再种上几棵树,最终的效果看上去是这样:

monery8 发表于 2012-11-3 18:55

我这也有Unity3D Terrian中文教程

叶之痕 发表于 2012-11-5 00:11

求下载啊,LZ给点力再发个制作好的图

owhnet 发表于 2012-11-8 17:18

太喜欢这个网站了顶

动漫中国 发表于 2012-12-3 07:47

不能不顶,楼主太给力了!

Nikola·Tesla~ 发表于 2012-12-3 20:46

文字形式的啊?看看也不错{:5_387:}

shengbin88 发表于 2013-1-14 14:19

支持,新手必看

daxi33 发表于 2013-1-24 17:13

顶一个看看

shengbin88 发表于 2013-1-24 22:38

每次看的体会都不一样

紅日逆刃 发表于 2013-5-27 23:39


感谢楼主的无私分享!{:soso__11402694654016840197_7:}
页: [1] 2 3
查看完整版本: Unity3D 地形制作教程