dtStatus dtBuildTileCacheRegionsChunky(dtTileCacheAlloc* alloc, const int minRegionArea, const int mergeRegionArea, dtTileCacheLayer& layer, int regionChunkSize)
{
    dtLayerMonotoneRegion* regs = NULL;
    int nregs = 0;

    dtStatus status = CollectRegionsChunky(alloc, layer, regionChunkSize, regs, nregs);
    if (dtStatusSucceed(status))
    {
        MergeAndCompressRegions(alloc, layer, regs, nregs, minRegionArea, mergeRegionArea);
    }

    return status;
}
dtStatus dtBuildTileCacheRegionsMonotone(dtTileCacheAlloc* alloc, dtTileCacheLayer& layer)
{
    dtLayerMonotoneRegion* regs = NULL;
    int nregs = 0;

    dtStatus status = CollectRegionsMonotone(alloc, layer, regs, nregs);
    if (dtStatusSucceed(status))
    {
        MergeAndCompressRegions(alloc, layer, regs, nregs);
    }

    return status;
}