Version: 6000.3
语言: 中文
用画笔雕刻地形
平滑地形的高度

在地形上涂漆孔

要模拟洞穴开口和悬垂地层(例如悬崖),请使用“绘制孔”工具隐藏地形场景中的地形。地形游戏对象会向场景添加一个大型平面,你可以使用地形的“检查器”窗口创建详细的地形。更多信息
请参阅术语表
.然后使用其他编辑器工具(如ProBuilder)创建洞穴或悬垂几何体。

访问该工具

要绘制孔洞,请在地形图块的 检查器(Inspector) 窗口中,选择 绘制地形(Paint Terrain) 工具>工具下拉菜单> 绘制孔(Paint Holes) 。

工具选项

“油漆孔”工具是基于画笔的。要了解如何使用画笔,请参阅画笔

隐藏或平滑锯齿边缘

“绘制孔”工具是基于纹理的,因此它可以在孔周围创建锯齿边缘。您可以:

  • 使用几何体(例如岩石网格)隐藏锯齿边。

  • 增加高度图(Heightmap)一种灰度纹理,用于存储对象的高度数据。每个像素存储垂直于该像素所表示的面的高度差。
    请参阅术语表
    添加更多纹素的分辨率。这增加了性能要求。

    注意:更改分辨率时,编辑器会将较高分辨率的纹理数据复制到较低分辨率的纹理数据中。换句话说,它缩小了规模。但是,它并没有升级。

要尝试更高的分辨率:

  1. 使用“绘制孔”工具重新绘制要重新绘制的孔的部分。
  2. 地形设置(Terrain Settings) 中,增加 高度图分辨率(Heightmap Resolution)。
  3. 再次画孔。

有关更多信息,请参阅地形设置参考

孔碰撞

地形中的孔洞会自动从地形中排除碰撞体(Collider) 用于处理对象物理碰撞的不可见形状。碰撞体不需要与对象的网格体形状完全相同 - 在游戏中,粗略的近似值通常更有效且难以区分。更多信息
请参阅术语表
,以便角色和物体可以从中掉下来。您无需手动调整地形碰撞器(Terrain Collider地形形状的碰撞器组件,用于处理与其附加的地形对象形状相同的碰撞表面的碰撞。更多信息
请参阅术语表
.

如果你在基于脚本的工作流程中创建孔洞,请确保孔的遮罩纹理的分辨率等于地形高度图的分辨率减去 1 (-1).例如,如果地形的高度图分辨率为1025x1025,孔的遮罩纹理需要1024x1024.有关更多信息,请参阅 TerrainData-holesResolution

使用自定义材质

孔功能取决于着色器在 GPU 上运行的程序。更多信息
请参阅术语表
.要允许在自定义地形材质中出现孔洞,您可以:

  • 使用编辑器提供的地形着色器。
  • 在片段着色器中使用您自己的着色器和以下代码片段:
  #ifdef _ALPHATEST_ON
      ClipHoles(IN.uvMainAndLM.xy);
  #endif

其他资源

用画笔雕刻地形
平滑地形的高度