Unity3D自带功能:地形(Terrain)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity3D自带功能:地形(Terrain)相关的知识,希望对你有一定的参考价值。

参考技术A 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面板设置新建“细节面片”的参数:

Terrain地形

Terrain:地形

Create Terrain    创建地形

Import Heightmap-Raw    导入高度图-Raw格式

Export Heightmap-Raw    导出高度图-Raw格式

Set Resolution    设置变形,地形大小高度等

Mass Place Trees    大规模放置树

Flatten Heightmap    使高度图平坦

Refresh Tree and Detail Prototypes    刷新树和细节的原型

技术图片

Mobile Input 手机输入

Enable:启用

Disable:禁用

以上是关于Unity3D自带功能:地形(Terrain)的主要内容,如果未能解决你的问题,请参考以下文章

unity3D绘画手册-----地形及术语解释

unity3d 如何旋转terrain 地形文件

unity3d 如何旋转terrain 地形文件

unity3d 地形

10.Unity2018中的地形——Terrain(一)

关于Unity自带的Terrain编辑器