Exemplo n.º 1
0
        public override void OnRecycle()
        {
            this.size                 = default;
            this.nodeSize             = default;
            this.initialPenalty       = default;
            this.diagonalCostFactor   = default;
            this.connectionsType      = default;
            this.agentHeight          = default;
            this.checkMask            = default;
            this.collisionMask        = default;
            this.collisionCheckRadius = default;

            ArrayUtils.Recycle(ref this.nodes, new CopyNode());
        }
Exemplo n.º 2
0
        public override void OnCopyFrom(Graph other)
        {
            var gg = (GridGraph)other;

            this.size                 = gg.size;
            this.nodeSize             = gg.nodeSize;
            this.initialPenalty       = gg.initialPenalty;
            this.diagonalCostFactor   = gg.diagonalCostFactor;
            this.connectionsType      = gg.connectionsType;
            this.agentHeight          = gg.agentHeight;
            this.checkMask            = gg.checkMask;
            this.collisionMask        = gg.collisionMask;
            this.collisionCheckRadius = gg.collisionCheckRadius;

            ArrayUtils.Copy(other.nodes, ref this.nodes, new CopyNode());
        }
Exemplo n.º 3
0
        public override void OnRecycle()
        {
            this.size                 = default;
            this.nodeSize             = default;
            this.initialPenalty       = default;
            this.diagonalCostFactor   = default;
            this.connectionsType      = default;
            this.agentHeight          = default;
            this.checkMask            = default;
            this.collisionMask        = default;
            this.collisionCheckRadius = default;

            if (this.nodes != null)
            {
                Debug.Log("Recycle: " + this.nodes.Count);
                for (int i = 0; i < this.nodes.Count; ++i)
                {
                    var node = (GridNode)this.nodes[i];
                    PoolClass <GridNode> .Recycle(ref node);
                }

                this.nodes.Clear();
            }
        }