eruiou 发表于 2013-7-8 10:01

Max网格物件转换成Unity的专用地形

在网上经常有朋友问如何将max制作的地形转换到Unity3d使用,主要就是已经在max制作完成了地形高度与细节,希望在Unity里面可直接刷贴图与植物。

目前市面上有几个插件可以完成地形的转换,例如T4M,Mesh to Terrain, CTE(国人开发)这类的插件基本上都可满足地形转换的需求,同时在资源商店的价格也根据功能而有所差异。

接下来我们要介绍的是一个地形专用的转换脚本,在操作与使用上非常的有效率,可单键完成max地形的转换,这个脚本的下载位置:
http://www.narkii.com/club/thread-293148-1.html

下载后,将解压出来的Editor直接复制到项目文件的Assets底下即可。

现在,我们来看看要如何进行地形的转换,如图所示,这是已经在3dmax里面完成的地形物件,选择地形后输出fbx格式的文件到Unity项目文件的目录下。



导入地形后,将地形物件添加到场景里面。



新建一个地形,如图所示,左边的物件是max导入的地形,右边则是Unity建立的地形。



接下来的步骤很简单,在Hierarchy面板里面选择max导入的地形,然后选择 Terrain > 3DObject to Terrain,需要注意的是,如果没出现这个选项,请确认解压后的文件是否放置在Asset目录下。



如图所示,右边Unity的地形根据max导入的物件自动生成了地形表面,不过看起来地形的高度似乎不是很一致,原因是Unity内建的地形有默认高度的限制。



在Set Heightmap resolution > Terrain Height的栏位里面将地形高度设置为900(根据max地形的高度来调整),然后按下Set Resolution重新指定高度。



如图所示,经过调整后的地形基本上已经接近了原始的max地形高度。



把max地形删除,现在我们就可以开始用Unity的地形工具来修改新的地形表面。



现在测试一下新的地形是否可以正确的进行刷出高度与贴图,选择一个笔刷样式,在地形上面随意的移动来进行测试。



笔刷的测试完全没问题,也就是转换出来的地形可以正常的使用地形的笔刷工具来进行表面调整与修改。



接着进行贴图的绘制,新增两种不同类型的贴图后,在地形表面刷出我们需要的材质效果,如图所示。



在刷贴图的时候,一般的习惯是先用第一层的材质来打底,然后用覆盖的方式一层一层的叠加上去,这样的做法主要是比较容易得到层次的效果。



将内建的Skybox资源包或是论坛提供的其他类型天空盒导入,我们需要在地形场景添加环境效果,操作的方式非常容易,将Skybox已经设定好的材质直接添加到Render Settings里面的Skybox Material的栏位即可。



如图,地形的背景已经看到了天空的云彩,看起来效果还不错,但是我们发现了一个问题,那就是地形的远端过于清晰,与天空的交界处无法融合的很自然,所以必须在场景内添加一些效果。



勾选Fog启用雾化功能,将Fog Density 降低到0.0006-0.0008之间,然后用Fog Color旁边的吸管点选视图中的天空底层部分,也就是比较偏黄的位置,这时我们可以看到场景内已经产生了较为逼真的雾化效果。

http://www.narkii.com/club/forum.php?mod=image&aid=43081&size=300x300&key=4269444a1e21f56c&nocache=yes&type=fixnone

Fog Color的设置非常的重要,很多的朋友经常问的一个问题就是天空盒设置后无法跟场景融合,所以画面看起来极为不协调,如图所示,天空背景采用了较深的颜色,而Fog Color为白色的情况下,地形的远端出现了很不搭配的画面。

http://www.narkii.com/club/forum.php?mod=image&aid=43083&size=300x300&key=19869e45597f0755&nocache=yes&type=fixnone

在这种情况下,解决的方法就是正确的设置雾化的颜色,如图所示,在改变了雾化的颜色后,天空的交界处得到了比较理想的效果。



如图所示,在不同的天空背景下,改版雾化的颜色即可创造出截然不同的场景效果。






本篇3d教程完。

443452169 发表于 2014-3-22 15:27

好教程,但是有个问题,如果我的MAX地形是有两块甚至两块以上的模型拼成的,它能转化成U3D的地形吗

wonderm 发表于 2017-4-1 21:40

很不错

tiaoshiok1 发表于 2017-4-1 20:55

真心顶

little_xiang 发表于 2017-4-1 21:08

难得一见的好帖

1965285557 发表于 2017-4-1 20:54

说的非常好

1965285557 发表于 2017-4-1 20:56

很好哦

Mr.Q 发表于 2017-4-23 11:18

很不错

mger186 发表于 2017-4-23 11:10

楼主是超人

HouG1230 发表于 2017-4-23 11:20

很好哦
页: [1]
查看完整版本: Max网格物件转换成Unity的专用地形