找回密码
 立即注册
查看: 4591|回复: 84

[基础] Unity3D 地形制作教程

[复制链接]
发表于 2012-11-3 18:19 | 显示全部楼层 |阅读模式
资源信息 Tutorial Information
教程名称: Unity3D 地形制作教程(发帖教程)
适用引擎:   (适用引擎,为空默认为Unity)
教程语种: 中文
教程等级: 1
教程格式: 图文(请用IE9以上浏览器访问本版块)
教程作者: 转载自互联网 (如有问题请短消息联系作者或发表回复)
下载地址: (兑换积分)
点击查看原图
美丽分割线
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,再种上几棵树,最终的效果看上去是这样:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 1鲜花 +1 收起 理由
Unity一哥 + 1 神马都是浮云

查看全部评分

发表于 2012-11-3 18:55 | 显示全部楼层
我这也有Unity3D Terrian中文教程

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

呵呵  发表于 2012-11-3 18:57
发表于 2012-11-5 00:11 | 显示全部楼层
求下载啊,LZ给点力再发个制作好的图
发表于 2012-11-8 17:18 | 显示全部楼层
太喜欢这个网站了  顶
发表于 2012-12-3 07:47 | 显示全部楼层
不能不顶,楼主太给力了!
发表于 2012-12-3 20:46 | 显示全部楼层
文字形式的啊?看看也不错{:5_387:}
发表于 2013-1-14 14:19 | 显示全部楼层
支持,新手必看
发表于 2013-1-24 17:13 | 显示全部楼层
顶一个看看
发表于 2013-1-24 22:38 | 显示全部楼层
每次看的体会都不一样
发表于 2013-5-27 23:39 | 显示全部楼层

感谢楼主的无私分享!{:soso__11402694654016840197_7:}

点评

顶一个........  详情 回复 发表于 2013-8-1 11:46
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-5-17 15:36 , Processed in 0.133075 second(s), 34 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表