Terrain Editor
启动Terrain Editor
-
创建Terrain: 在Unity的Hierarchy视图中,右键选择
Create > 3D Object > Terrain
来创建一个新的Terrain对象。 -
打开Terrain Inspector: 选择Hierarchy中的Terrain对象,Inspector视图会显示Terrain的各种属性和工具。
从左到右这些按钮的功能是:
- Create Neighbor Terrains(创建相邻地形):这个工具允许你创建与当前地形平铺相接的新地形块,方便地形的扩展和连续性管理。
- Paint Terrain(绘制地形):这是用于修改地形高度或应用不同的地表纹理的工具。可以雕塑地形的高低起伏或给地面涂上不同的纹理材料。
- Paint Trees(种植树木):此工具允许你在地形上放置和管理树木和其他类似的细节物件,如草和灌木。
- Paint Details(绘制细节):用于在地形上添加更细小的装饰性细节,例如草丛、小花或其他小型植被。
- Terrain Settings(地形设置):提供了一系列设置,让你能够调整地形的基本属性,如分辨率、材质设置、地形的物理属性等。
Terrain Settings
Basic Terrain
-
Grouping ID: 用于识别属于同一组的多个地形对象。当你有多块地形需要协同处理时,这个设置非常有用。
-
Auto Connect: 当这个选项被勾选时,具有相同Grouping ID的地形会自动连接在一起,形成一个连续的大地形。
-
Draw: 控制地形是否被渲染。如果取消勾选,地形将不会在游戏中显示,可以用于临时隐藏地形进行测试。
-
Draw Instanced: 如果勾选,地形将使用GPU实例化渲染,这可以显著提高渲染多个地形块时的性能。
-
Enable Ray Tracing: 如果勾选,地形将支持光线追踪技术,增强光影效果。这需要硬件支持并可能影响性能。
-
Pixel Error: 控制地形的细节层次与视距的关系。数值越小,地形从远处看起来越精细,但渲染成本也越高。
-
Base Map Dist.: 基础贴图的绘制距离,设置地形贴图在多远的距离下转为基础贴图,以优化性能。
-
Cast Shadows:
关闭(Off):完全禁用地形的阴影投射。这意味着地形在场景中不会产生任何阴影,这在不需要阴影或为了优化性能的情景中很有用。开启(On):启用地形的阴影投射,使用默认设置。地形将根据场景中设置的光照条件投射阴影。
双面(Two Sided):允许地形从顶部和底部两个表面投射阴影。这个选项在地形的底面也可能可见且应该投射阴影的情况下非常有用。
仅阴影(Shadows Only):此设置使地形只投射阴影,而不在场景中渲染地形的表面。这在优化性能时很有用,比如当不需要地形的视觉呈现但需要其通过阴影影响光照的情况。
-
Reflection Probes: 控制地形如何与环境反射探头交互。
关闭(Off):此选项将禁用地形的反射探针。地形将不会接收任何反射探针的影响,这可能用于优化性能或当场景设计中不需要反射时。混合探针(Blend Probes):地形将使用场景中存在的多个反射探针,并在它们之间进行混合。这可以在地形跨越多个反射探针区域时创建更平滑和逼真的反射效果。
混合探针和天空盒(Blend Probes and Skybox):除了使用和混合场景中的反射探针外,还会考虑天空盒在计算反射时的影响。这增加了视觉上的丰富性,尤其是在开阔的室外环境中,可以更真实地反映天空和远处对象。
简单(Simple):此选项提供一种基本的反射处理方式,通常用于对性能要求较高的场景,不需要复杂的探针混合,只利用最近的单个反射探针的数据。
-
Material: 显示当前地形使用的材质。可以选择现有材质或通过点击“Create…”创建新的材质。通常使用“TerrainLit”材质,它特别为地形渲染优化。
Tree & Detail Objects
这里可以添加和配置地形上的树木和细节对象,如草和小植被。你可以控制这些对象的密度、分布以及它们如何随风动作。
-
绘制(Draw):勾选此项会在地形上显示树木和细节物体。
-
烘焙光照探针(Bake Light Probes):启用此项允许树木和细节物体使用光照探针的数据,这可以改善场景的光照效果,使植被更自然地融入周围环境。
-
移除光照探针(Remove Light Probes):此选项允许在地形修改时自动从光照探针的影响中移除树木和细节物体。
-
保留树木原型(Preserve Tree Prototypes):启用此项可以在编辑地形时保留树木的原始模型设置,避免因地形编辑造成的树木属性丢失。
-
树木运动矢量(Tree Motion Vector):控制树木受风的影响方式,可以选择“从原型继承”(Inherit From Prototype),这意味着树木的运动将基于它们原型的设置。
-
细节距离(Detail Distance):定义了地形细节物体(如草)的最大可视距离,单位为米。
-
细节密度比例(Detail Density Scale):控制地形上细节物体的整体密度,值越大显示的细节物体越多。
-
树木距离(Tree Distance):设置树木在地形上的最大渲染距离,超出这个距离的树木将不会被渲染。
-
广告牌起始(Billboard Start):树木在远距离时开始使用广告牌效果的距离,广告牌效果是一种优化技术,用于提升远处树木的渲染效率。
-
淡出长度(Fade Length):控制树木从完全渲染到只显示广告牌效果的过渡区域长度。
-
最大网格树木(Max Mesh Trees):设置在地形上可以使用完整3D模型的树木的最大数量。
-
细节散布模式(Detail Scatter Mode):定义细节物体在地形上的散布模式,如“覆盖模式”(Coverage Mode)将根据地形的覆盖层设置细节物体的分布。
Wind Settings for Grass
调整影响地形上草和其他细节对象的风的设置,包括风的强度、方向和风对这些细节对象的影响程度。
-
Speed:
- 控制风的速度。
- 较高的值会使草在风中摆动得更快。
-
Size:
- 控制风的影响范围。
- 较高的值会使更大范围的草受到风的影响。
-
Bending:
- 控制草在风中的弯曲程度。
- 较高的值会使草在风中弯曲得更多。
-
Grass Tint:
- 控制草的颜色。
- 你可以选择一个颜色来调整草的外观。
Mesh Resolution (On Terrain Data)
设置地形网格的分辨率。高分辨率的网格允许更复杂的地形形状,但可能会降低性能。
- Terrain Width:
- 地形的宽度(以世界单位计)。
- Terrain Length:
- 地形的长度(以世界单位计)。
- Terrain Height:
- 地形的最大高度(以世界单位计)。
- 这个设置定义了地形在Y轴方向上的最大高度,也就是说,地形从最低点到最高点的高度差。
- Detail Resolution Per Patch:
- 每个补丁的细节分辨率。
- 这个设置定义了每个地形补丁(Patch)的细节分辨率。较高的值会提供更多的细节,但会增加计算量和渲染负担。
- Detail Resolution:
- 细节分辨率。
- 这个设置定义了整个地形的细节分辨率。较高的值会使地形的细节更加丰富,但同样会增加计算量和渲染负担。
Holes Settings (On Terrain Data)
此设置用于在地形中创建“洞”,即地形的某部分可以透明或被完全移除,通常用于创建如湖泊和河流的地形特征。
- Compress Holes Texture:
- 选项描述:启用或禁用地形洞的纹理压缩。
- 当勾选此选项时,地形洞的纹理将被压缩,从而减少纹理的内存占用和提高渲染性能。
- 当你在地形上创建洞时,Unity会生成一个洞的纹理贴图,用于标记地形哪些部分应该被渲染为空洞。
- 这对于大型地形或具有多个洞的复杂地形尤其有用,因为可以有效地管理资源和性能。
如果你在创建具有大量洞的地形时遇到性能问题,可以尝试启用这个选项。
Texture Resolutions (On Terrain Data)
在这个部分,你可以设置地形的纹理分辨率。这影响地形的贴图如何被渲染,是影响性能和视觉质量的重要因素。
-
Heightmap Resolution:
- 决定了地形的高度图的精细程度。较高的分辨率可以提供更多的高度细节,但也会增加内存和计算负担。
-
Control Texture Resolution:
- 决定了控制纹理的精细程度。控制纹理用于定义地形上的不同区域(例如,草地、泥土、沙地等)的混合方式。较高的分辨率可以提供更细致的区域控制,但也会增加内存和计算负担。
-
Base Texture Resolution:
- 基础纹理分辨率,定义地形基础纹理的分辨率。
- 决定了基础纹理的清晰度。基础纹理是应用在整个地形上的纹理,较高的分辨率可以提供更清晰的地形外观,但也