Navigation
API > API/Runtime > API/Runtime/Navmesh
Warnings * The distance field must be created using rcBuildDistanceField before attempting to build regions.
Description
Builds region data for the heightfield using simple monotone partitioning.
Non-null regions will consist of connected, non-overlapping walkable spans that form a single contour. Contours will form simple polygons.
If multiple regions form an area that is smaller than `minRegionArea_, then all spans will be re-assigned to the zero (null) region.
Partitioning can result in smaller than necessary regions. `mergeRegionArea_ helps reduce unecessarily small regions.
See the rcConfig documentation for more information on the configuration parameters.
The region data will be available via the rcCompactHeightfield::maxRegions and rcCompactSpan::reg fields.
The distance field must be created using rcBuildDistanceField before attempting to build regions.
| Name | rcBuildRegionsMonotone |
| Type | function |
| Header File | /Engine/Source/Runtime/Navmesh/Public/Recast/Recast.h |
| Include Path | #include "Recast/Recast.h" |
| Source | /Engine/Source/Runtime/Navmesh/Private/Recast/RecastRegion.cpp |
bool rcBuildRegionsMonotone
(
rcContext * ctx,
rcCompactHeightfield & chf,
const rcBorderSize borderSize,
const int minRegionArea,
const int mergeRegionArea
)
True if the operation completed successfully.
Parameters
| Name | Remarks |
|---|---|
| ctx | The build context to use during the operation. |
| chf | A populated compact heightfield. |
| borderSize | The size of the non-navigable border around the heightfield. [Limit: >=0] [Units: vx] |
| minRegionArea | The minimum number of cells allowed to form isolated island areas. [Limit: >=0] [Units: vx]. |
| mergeRegionArea | Any regions with a span count smaller than this value will, if possible, be merged with larger regions. [Limit: >=0] [Units: vx] |
See Also
-
rcBuildDistanceField
-
rcBuildRegionsMonotone