public virtual void LoadData(AnimationGraphView graphView, NodeAsset nodeAsset, Dictionary <NodeAsset, BaseNodeUI> nodeMap)
        {
            ID = string.IsNullOrEmpty(nodeAsset.ID) ? Guid.NewGuid().ToString() : nodeAsset.ID;

            NameField.SetValueWithoutNotify(string.IsNullOrEmpty(nodeAsset.Data.Name) ? DefaultName : nodeAsset.Data.Name);
            _speedField.SetValueWithoutNotify(nodeAsset.Data.Speed);
        }
        public override void LoadData(AnimationGraphView graphView, NodeAsset nodeAsset, Dictionary <NodeAsset, BaseNodeUI> nodeMap)
        {
            base.LoadData(graphView, nodeAsset, nodeMap);

            StateMachineNodeAsset = (StateMachineNodeAsset)nodeAsset;

            LoadDataWithCallback(graphView, nodeAsset, nodeMap, portAsset => GenerateStatePort(((StateMachineNodeInputPortAsset)portAsset).StateName));
        }
Example #3
0
        private void CreateGraphView()
        {
            GraphView = new AnimationGraphView
            {
                name = "Animation Graph"
            };
            GraphView.styleSheets.Add(_styleSheet);

            GraphView.StretchToParentSize();

            rootVisualElement.Insert(0, GraphView);

            StateMachineEditor.Editor?.Close();
        }
        public void LoadDataWithCallback(AnimationGraphView graphView, NodeAsset nodeAsset, Dictionary <NodeAsset, BaseNodeUI> nodeMap, Func <NodeInputPortAsset, Port> callback)
        {
            for (int i = 0; i < nodeAsset.InputPorts.Count; i++)
            {
                Port inputPortUI = callback(nodeAsset.InputPorts[i]);

                if (nodeAsset.InputPorts[i].SourceNodeAsset != null)
                {
                    Edge edge = new Edge {
                        input = inputPortUI, output = (Port)nodeMap[nodeAsset.InputPorts[i].SourceNodeAsset].outputContainer[0]
                    };
                    edge.input.Connect(edge);
                    edge.output.Connect(edge);

                    graphView.AddElement(edge);
                }
            }

            RefreshExpandedState();
            RefreshPorts();
        }
Example #5
0
        public override void LoadData(AnimationGraphView graphView, NodeAsset nodeAsset, Dictionary <NodeAsset, BaseNodeUI> nodeMap)
        {
            base.LoadData(graphView, nodeAsset, nodeMap);

            _clipField.SetValueWithoutNotify(((ClipNode)nodeAsset.Data).Clip);
        }
Example #6
0
        public override void LoadData(AnimationGraphView graphView, NodeAsset nodeAsset, Dictionary <NodeAsset, BaseNodeUI> nodeMap)
        {
            base.LoadData(graphView, nodeAsset, nodeMap);

            LoadDataWithCallback(graphView, nodeAsset, nodeMap, portAsset => InputPort);
        }