Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


BeginPaintHeightmap(Terrain, Rect, int, bool)

Helper function to set up a PaintContext for modifying the heightmap of one or more Terrain tiles.
Read time 1 minuteLast updated 13 days ago

Definition

public static PaintContext BeginPaintHeightmap(Terrain terrain, Rect boundsInTerrainSpace, int extraBorderPixels = 0, bool fillOutsideTerrain = true)

Parameters

terrain

Reference Terrain tile.

boundsInTerrainSpace

The region in terrain space to edit.

extraBorderPixels

Number of extra border pixels required.

fillOutsideTerrain

Whether to fill empty space outside of Terrain tiles with data from the nearest tile.

Returns

Type

Description

PaintContextPaintContext containing the combined heightmap data for the specified region.

Remarks

BeginPaintHeightmap identifies all of the heightmap pixels that are within
extraBorderPixels
of the bounds rectangle. The search is performed across adjacent connected Terrain tiles. The pixels are collected into a temporary render texture and stored in _sourceRenderTexture.
After calling this function, you may modify the heightmap by writing the new values into _destinationRenderTexture. Then, you may complete the modification by calling TerrainPaintUtility.EndPaintHeightmap to copy the modified data back to the Terrain tiles. Alteratively, you may cancel the modification by calling TerrainPaintUtility.ReleaseContextResources to release the RenderTexture resources.