void Awake() { patrolManager = transform.GetComponent <PatrolManager>(); nodeDiameter = nodeRadius * 2.0f; gridSizeX = Mathf.RoundToInt(gridWorldSize.x / nodeDiameter); gridSizeY = Mathf.RoundToInt(gridWorldSize.y / nodeDiameter); foreach (TerrainType region in walkableRegions) { walkableMask.value |= region.terrainMask.value; walkableRegionsDictionary.Add((int)Mathf.Log(region.terrainMask.value, 2), region.terrainPenalty); } patrolManager.InitGridSize(gridSizeX, gridSizeY); //patrolManager.CheckExistArea("Border"); patrolManager.CheckExistArea("UpBorder"); patrolManager.CheckExistArea("DownBorder"); patrolManager.CheckExistArea("LeftBorder"); patrolManager.CheckExistArea("RightBorder"); CreateGrid(); offsetX = transform.position.x; offsetZ = transform.position.z; chooseValue = Mathf.FloorToInt(obstacleProximityPenalty / (blurSize * blurSize)) + chooseOffset; MaxBorderPoint = transform.position + 0.5f * new Vector3(gridWorldSize.x, 0, gridWorldSize.y); MinBorderPoint = transform.position - 0.5f * new Vector3(gridWorldSize.x, 0, gridWorldSize.y); Debug.Log(MaxBorderPoint + " " + MinBorderPoint); }