版本: Unity 6 (6000.0)
语言英语
  • C#

TerrainPaintUtility.BeginPaintHoles

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您花时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static TerrainTools.PaintContext BeginPaintHoles(Terrain terrain, Rect boundsInTerrainSpace, int extraBorderPixels = 0, bool fillOutsideTerrain = true);

参数

terrain 引用地形块。
boundsInTerrainSpace 要编辑的地形空间区域。
extraBorderPixels 所需的额外边框像素数。
fillOutsideTerrain 是否用最近的块中的数据填充地形块之外的空闲空间。

返回值

PaintContext 包含指定区域的组合地形孔数据的 PaintContext。

描述

帮助函数,用于为修改一个或多个地形块的地形孔设置 PaintContext。

BeginPaintHoles 识别在 extraBorderPixels 范围内的边界矩形内的所有地形孔像素。搜索是在相邻连接的地形块中执行的。这些像素被收集到一个临时的渲染纹理中,并存储在 PaintContext.sourceRenderTexture 中。

在调用此函数后,您可以将新值写入 PaintContext.destinationRenderTexture 来修改地形孔。然后,您可以通过调用 TerrainPaintUtility.EndPaintHoles 来完成修改,以将修改后的数据复制回地形块。或者,您可以通过调用 TerrainPaintUtility.ReleaseContextResources 来取消修改,以释放 RenderTexture 资源。

其他资源: TerrainPaintUtility.EndPaintHolesPaintContext