Version: 2022.3

TerrainData.DirtyHeightmapRegion

切换到手册
public void DirtyHeightmapRegion (RectInt region, TerrainHeightmapSyncControl syncControl);

参数

region 要标记为“脏”的矩形区域。
syncControl 控制如何执行 CPU 同步。

描述

将高度贴图的指定部分标记为“脏”。

仅在手动更改高度贴图纹理的 GPU 部分(在其中渲染或使用 Graphics.CopyTexture )之后,才使用此函数。使用 syncControl 参数可控制希望 Unity 如何执行 CPU 同步。Unity 会对不同步数据(高度数据、LOD 数据或两者)的读回进行排队,直到下次调用 SyncHeightmap

如果当前活动 RenderTexture 包含更改,并且要将其一部分复制到高度贴图纹理中,请改用 CopyActiveRenderTextureToHeightmap

如果将 TerrainHeightmapSyncControl.HeightAndLod 传递给 syncControl 参数,则此函数使用 TerrainChangedFlags.Heightmap 发出 OnTerrainChanged 消息。如果将 TerrainHeightmapSyncControl.Height 传递给 syncControl 参数,则它使用 TerrainChangedFlags.DelayedHeightmapUpdate 发出 OnTerrainChanged 消息。