24 lines
923 B
C#
24 lines
923 B
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace InfiniteWorld.VoxelWorld.NavMesh
|
|
{
|
|
[Serializable]
|
|
/// <summary>
|
|
/// Inspector-friendly tuning parameters that bound how clustered nav coverage is shaped and rebuilt at runtime.
|
|
/// </summary>
|
|
public sealed class VoxelWorldNavMeshConfig
|
|
{
|
|
[Min(0)] public int agentTypeId;
|
|
[Min(1)] public int maxNavMeshBuildsPerFrame = 1;
|
|
[Min(0f)] public float navBoundsHorizontalPadding = 1f;
|
|
[Min(0f)] public float navBoundsVerticalPadding = 2f;
|
|
[Min(1)] public int maxActiveCoverageWindows = 3;
|
|
[Min(0f)] public float clusterMergeDistanceInChunks = 4f;
|
|
[Min(0f)] public float coveragePaddingInChunks = 2f;
|
|
[Min(0.25f)] public float coverageQuantizationInChunks = 1f;
|
|
[Min(1f)] public float minCoverageWindowSizeInChunks = 4f;
|
|
[Min(0)] public int chunkCollectionMarginInChunks = 1;
|
|
}
|
|
}
|