コード例 #1
0
        public static GameObject instanciateFromPrefab(Transform p_parent, NavigationNode p_associatedNavigationNode, GameObject p_navigationNodeComponentPrefab)
        {
            GameObject l_instanciatedGameObject = GameObject.Instantiate(p_navigationNodeComponentPrefab);

            l_instanciatedGameObject.transform.SetParent(p_parent);
            l_instanciatedGameObject.transform.localPosition = p_associatedNavigationNode.LocalPosition;
            l_instanciatedGameObject.transform.localRotation = Quaternion.identity;
            NavigationNodeComponent l_navigationNodeComponent = l_instanciatedGameObject.GetComponent <NavigationNodeComponent>();

            if (l_navigationNodeComponent)
            {
                l_navigationNodeComponent.AssociatedNavigationNode = p_associatedNavigationNode;
                p_associatedNavigationNode.GameInstanceID          = new NavigationNodeGameWorldInstanceID()
                {
                    ID = l_navigationNodeComponent.GetInstanceID()
                };
            }
            return(l_instanciatedGameObject);
        }
コード例 #2
0
        private void Awake()
        {
            NavigationGraph = NavigationGraphAsset.InstanciateNavigationGraph();
            NavigationGraphComponentContainer.UniqueNavigationGraphComponent = this;

            for (int i = 0; i < NavigationGraph.NavigationNodes.Count; i++)
            {
                NavigationNodeGameRepresentation[NavigationGraph.NavigationNodes[i]] = NavigationNodeComponent.instanciateFromPrefab(transform, NavigationGraph.NavigationNodes[i], NavigationNodeComponentPrefab);
            }

            NavigationEngine = NavigationEngine.alloc();
        }