コード例 #1
0
        public void InitialiseEnvironment()
        {
            Transform[] children = this.GetComponentsInChildren <Transform>(true);

            int layerNumber = this.gameObject.layer;

            Debug.Assert(navMeshSurface.layerMask.ContainsLayer(layerNumber),
                         $"Expected {typeof(EnvironmentManager)}'s layer to be included in {typeof(NavMeshSurface)}.{nameof(NavMeshSurface.layerMask)} but was not. Ensure {gameObject}'s layer is set!",
                         this);

            foreach (Transform t in children)
            {
                t.gameObject.layer = layerNumber;
            }

            navMeshSurface.BuildNavMesh();

            navMeshTriangulation = NavMesh.CalculateTriangulation();

            chunkGrid = new HashedChunkGrid(GenerateChunks(navMeshTriangulation));
        }
コード例 #2
0
 protected override void Awake()
 {
     base.Awake();
     chunkGrid      = new HashedChunkGrid();
     navMeshSurface = GetComponent <NavMeshSurface>();
 }