Unity3D自带功能:地形(Terrain)

Unity3D自带功能:地形(Terrain),第1张

Unity3D中的地形类似于Maya中使用置换贴图来变形高段数的多边形平面,其原理是自动创建一个中等多边形密度的mesh plane(多边形平面),然后指定一张16bit的灰阶图作为height map(高差图),并根据mesh各个顶点所对应的灰度数值沿着Y轴改变该顶点的高度,形成高低起伏的复杂地形。

Unity3D内置了一套简单的brush(笔刷)工具来方便用户对地形物体的编辑修改。

通过菜单 GameObject > 3D Object > Terrain 可以创建一个Terrain (地形)。

Terrain Settings是对Terrain整体的参数设置面板。

最上面的一排按钮分别用来对地形及植被进行“刷制”的工具面板切换,最右边的 Terrain Setting 面板是针对地形整体的设置,这里挑一些常用的重点的来讲:

按下鼠标左键开始提升地形高度,如果同时按住 shift 键,则降低地形高度直到0。

直接刷出特定高度,按住 shift 键获取某一点的高度。非常适合用来刷出非水平面高度的平整地形,比如山顶或山间的一块平整地面等等。同时如果场景中有水面,由于Terrain不能刷出水平面以下的地形(最低刷到水平面),可以首先将全部地形提升到一定高度,再将水域地形刷低。

相当于光滑笔刷工具

在地形表面上绘制贴图。

首先需要在Textures栏中点击 Edit Textures... ,再选择 Add Texture 以添加一层贴图。

在这个“添加地形贴图”面板中我们可以设置一张颜色贴图和一张法线贴图,并指定贴图的重复度。如果检测出颜色贴图含有Alpha通道,就会将这个Alpha通道与作为光滑度的贴图,否则就会出现一个Smoothness参数供我们调节这一层表面的光滑度,此外还提供一个Metallic参数供我们调节这一层表面的金属颜色。

这里的贴图都需要处理成无缝贴图,否则场景中会出现明显的接缝。贴图不需要特别大,因为重复度会被设置得比较高,通常512或者1024分辨率的贴图就可以了。

第一层贴图会默认覆盖整个地形区域,从第二层(从左往右)开始,添加好贴图以后需要在地形上刷出该层贴图的出现范围。

需要编辑各层的贴图设置只需点击 Edit Textures... > Edit Texture... ,需要删除贴图层就点击 Edit Textures... > Remove Texture 。

在地形上刷出树来。

按下鼠标左键开始刷树,按住 Shift 键再刷可以删除已经刷出来的树,按住 Ctrl 键再刷可以删除当前选择的特定类型的树。

在Trees栏点击 Edit Trees... ,再选择 Add Tree ,可以添加一个GameObject作为“树”。这个物体可以是任意GameObject,并不一定非要是Tree Object。

然后就可以用鼠标在地形表面“刷”出这类树来了,同时也会出现具体的Settings参数。

我们可以添加多种type的树,然后一层层刷出复杂的森林结构。

同样的,我们也可以点击 Edit Trees... > Edit Tree 给树更换GameObject,或点击 Edit Trees... > Remove Tree 删除某一层的树。

在地形上刷出细节物体,通常用来做草。

按下鼠标左键开始刷细节物体,按住 Shift 键再刷可以删除已经刷出来的细节物体,按住 Ctrl 键再刷可以删除当前选择的特定类型的细节物体。

在Details栏点击 Edit Details... ,再选择 Add Grass Texture ,打开Add Grass Texture面板设置新建“草贴图”的参数:

在Details栏点击 Edit Details... ,再选择 Add Detail Mesh ,打开Add Detail Mesh面板设置新建“细节面片”的参数:

步骤 1):创建地形。执行 GameObject→3D Object→Terrain 菜单命令。步骤 2):在 Inspector 面板中单击 Import Raw 按钮添加地形,如下图所示。

步骤 3):设置地形参数,如下图所示,具体参数含义如下表所示。

参 数 含 义 功 能 Depth 深度 根据文件格式设置,可以是8位或16位 Width 宽度 设置高度图的宽 Height 高度 设置高度图的高 Byte Order 字节顺序 根据文件格式设置,可以是Mac或Windows Terrain Size 地形大小 定义地形的大小

步骤 4):创建好后,单击 Play 按钮进行测试,即可观察到基于高度图创建出来的地形效果,如下图所示。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11914570.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存