Unity地形系统详解与操作指南

一、 什么是地形?  

地形指的是地表各种各样的形态,具体指地表以上分布的固定性物体共同呈现出的高低起伏的各种状态。

Unity地形系统_c++


Unity地形系统_着色器_02

二、创建地形  

   创建地形,地形属于3D Object 类型,可以通过菜单栏 GameObject 去创建,也可以直接在 Hierarchy 面板中创建。

Unity地形系统_html_03

三、 地形工具  

从左到右分别是创建相邻地形、绘制工具、绘制树木工具、绘制细节工具、设置工具。

Unity地形系统_html_04

​​​​​​

1. 创建相邻的地形工具

   创建相邻地形,即在当前地形的十字区域内任创建一个地形。

Unity地形系统_html_05

2. 绘制工具

Unity地形系统_贴图_06

  • Raise or Lower Trerrain:提升或降低地形,鼠标左键为提升地形,Shift+鼠标左键为降低地形。
  • Paint Holes:绘制洞, 鼠标左键为绘制洞,Shift+鼠标左键为填充洞。
  • Paint Texture:绘制纹理,需要导入纹理资源,后缀是。unity package,导入之后会在assets中看见。点击笔刷地方的edit textures
  • Set Height:设置高度。
  • Smooth Height:平滑画笔,使尖锐部分变为平滑
  • Stamp Terrain:固定高度,即每次提升的高度都相同

2.1 绘制高度

Brushes:选择笔刷的样式。

Brush Size:笔刷的大小。

Opacity:笔刷强度。

选择绘制地形工具后,把光标移动至场景的地形上面,有蓝色的小圆圈,通过鼠标左键可以编辑地形,按住Shift 建单击鼠标左键可以消除之前的地形。

Unity地形系统_着色器_07

2.1 绘制洞

选择绘制洞工具后,把光标移动至场景的地形上面,有蓝色的小圆圈,通过鼠标左键可以在地形上绘制洞,按住Shift 建单击鼠标左键可以消除之前绘制的洞。

​​Unity地形系统_unity_08

2.3 绘制纹理

选中绘制纹理工具后,把光标移动至场景的地形上面,有蓝色的小圆圈,通过鼠标左键可以绘制地表的纹理(图,草地、道路、泥土等)。

Unity地形系统_unity_09

“Edit Terrain Layers->Create Layer”中可以添加贴图(第一张纹理铺满地)。

Unity地形系统_着色器_10


Tiling Settings 可以设置纹理的大小和偏移

Unity地形系统_贴图_11


2.4 设置高度

可以设置一个固定的海拔高度。

​​​Unity地形系统_着色器_12

2.5 平滑工具

可以将地形中一些比较尖锐的角涂抹的更光滑。

​​Unity地形系统_unity_13

2.6 固定高度

即每次提升的高度都相同。Unity地形系统_贴图_14

参数解释


参数解释
Stamp Height图章高度图章绘制的固定高度
Subtract 减去两个图章减去重叠部分
Max Add最大添加两个图章重叠部分高度增加

3. 绘制树木工具

Unity地形系统_html_15


参数解释
BushSize笔刷的半径。以地形单位米计算
TreeDensity树木密度。值越大树木越多
TreeHeight树的高度
LockWidthtoHeight锁定宽高比例
TreeWidth树的宽度

4. 绘制细节工具

   主要用于细节的刻画,如在地形上添加立体的花草、小石头、枯木等小物件。

Unity地形系统_着色器_16

5. 设置工具

   主要是设置地形的全局参数,比如地形的大小.地形贴图的尺寸和光照等。

​​​​​​

Unity地形系统_html_17

基本地形


属性功能
Draw切换地形渲染开关
Pixel Error像素误差,较高的之可能渲染较快,但是贴图可能不是非常精确。
Base Map Distance地形纹理将被以完整分辨率显示的最大距离。超过这个距离,为了效率将使用更低分辨率的混合图片。
Cast Shadows地形是否产生阴影?
Material用于渲染地形的材质。这将影响地形纹理的颜色通道如何被插值。查看【 Enabling Textures 】获取更多细节。可用的选项有:
Built In Standard对于每个splat层,可以为反射和平滑使用一个纹理,为法线使用一个纹理,以及一个标量值来调整金属光泽。关于PBR和标准着色器的更多信息,参见【标准着色器】。
Built In Legacy Diffuse这是来自Unity4.x及更早版本的内建地形材质遗产。它使用兰伯特(仅有漫射形式)光照模型,有可选的法线贴图支持。
Built In Legacy Specular这个内建的材质使用了BlinnPhong(漫射及镜面)光照模型,有可选的法线贴图支持。可以对地形指定整体镜面反射颜色和亮度。
Custom使用你选择的自定义材质来渲染地形。这个材质应当使用的被指定用于地形渲染的着色器(例如,着色器应当正确地执行纹理splat)。我们建议你查看我们内建地形着色器的源代码,并在它们上进行修改。
Reflection Probes在地形上反射探针如何被使用。仅当使用内建标准材质或支持渲染反射的自定义材质时才有效果。可用选项有:
Off反射探针被禁用,天空盒将会被用来反射。
Blend Probes反射探针将被启用。仅在探测之间产生混合。如果附近没有反射探针,默认反射将被使用,但在默认反射和探针之间的混合不会产生。
Blend Probes And Skybox反射探针启用。混合产生在探针和探针之间,或探针与默认反射之间。
Simple反射探针被启用,但当有两个重叠量存在时,在探针之间不产生混合。
Thickness沿Y轴负方向地形碰撞体积应当扩大多少。物体被认为与地形碰撞从表面到一个等于这个thickness的深度。在没有使用代价高昂的连续碰撞检测时,帮助避免高速移动物体穿过地形。注:如果碰撞器太扁,高速物体上帧位置在碰撞器上方,下一帧到了碰撞器下方,期间穿过了碰撞器,也即穿过了地形表面,但没有产生碰撞。

树木和细节对象


属性功能
Draw树、草地和细节物体要被绘制出来吗?
Detail Distance超过(与摄像头之间)距离外的细节将被剔除。
Detail Density在给定的区域单元内,细节/草地对象的数量。这个数值可以被设置得更低来降低渲染负载。
Tree Distance超过(与摄像头之间)距离的树木将被剔除。
Billboard Start(与摄像头之间)距离的3D树木物体将会被公告板图像所代替。
Fade length超过这个距离的树木在3D对象和公告板之间过渡。
Max Mesh Trees会被作为固定3D网格表现的可见树木的最大数量。超过这个限制,树木将被公告板代替。

风的设置


属性功能
Speed风吹到草地上的速度。
Size风吹过草地区域形成的“波痕”尺寸。
Bending草随风吹而摇摆的程度。
Grass Tint应用到草地对象的整体色调。

分辨率


属性功能
Terrain Width(在世界坐标系中)地形对象在X轴上的尺寸。
Terrain Length(世界坐标系中)地形对象在Z轴的尺寸。
Terrain Height(世界坐标系中)可能的高度图最低值与最高值间的差。
Heightmap Resolution地形高度图的像素分辨率(值应当为2的幂次再加1,如513=512+1)
Detail Resolution决定细节/草地单个补丁块的贴图分辨率。更高的分辨率会产生更小、更细节的补丁块。
Detail Resolution Per Patch单次绘制调用渲染的补丁块的长度/宽度。
Control Texture Resolution控制不同地形纹理混合的“地形贴图”分辨率。
Base Texture Resolution当从大于基本贴图的距离观察时(从上向下看),在地形上使用的混合纹理的分辨率。



免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空