void UAnimationCustomTransitionSchema::CreateDefaultNodesForGraph(UEdGraph& Graph) const { // Create the result node FGraphNodeCreator<UAnimGraphNode_CustomTransitionResult> ResultNodeCreator(Graph); UAnimGraphNode_CustomTransitionResult* ResultSinkNode = ResultNodeCreator.CreateNode(); ResultSinkNode->NodePosX = 0; ResultSinkNode->NodePosY = 0; ResultNodeCreator.Finalize(); SetNodeMetaData(ResultSinkNode, FNodeMetadata::DefaultGraphNode); UAnimationCustomTransitionGraph* TypedGraph = CastChecked<UAnimationCustomTransitionGraph>(&Graph); TypedGraph->MyResultNode = ResultSinkNode; // Create the source and destination input states { FGraphNodeCreator<UAnimGraphNode_TransitionPoseEvaluator> SourceNodeCreator(Graph); UAnimGraphNode_TransitionPoseEvaluator* SourcePoseNode = SourceNodeCreator.CreateNode(); SourcePoseNode->Node.DataSource = EEvaluatorDataSource::EDS_SourcePose; SourcePoseNode->NodePosX = -300; SourcePoseNode->NodePosY = -150; SourceNodeCreator.Finalize(); SetNodeMetaData(SourcePoseNode, FNodeMetadata::DefaultGraphNode); } { FGraphNodeCreator<UAnimGraphNode_TransitionPoseEvaluator> DestinationNodeCreator(Graph); UAnimGraphNode_TransitionPoseEvaluator* DestinationPoseNode = DestinationNodeCreator.CreateNode(); DestinationPoseNode->Node.DataSource = EEvaluatorDataSource::EDS_DestinationPose; DestinationPoseNode->NodePosX = -300; DestinationPoseNode->NodePosY = 150; DestinationNodeCreator.Finalize(); SetNodeMetaData(DestinationPoseNode, FNodeMetadata::DefaultGraphNode); } }
void UEdGraphSchema_BehaviorTreeDecorator::CreateDefaultNodesForGraph(UEdGraph& Graph) const { FGraphNodeCreator<UBehaviorTreeDecoratorGraphNode_Logic> NodeCreator(Graph); UBehaviorTreeDecoratorGraphNode_Logic* MyNode = NodeCreator.CreateNode(); MyNode->LogicMode = EDecoratorLogicMode::Sink; SetNodeMetaData(MyNode, FNodeMetadata::DefaultGraphNode); NodeCreator.Finalize(); }
void UAnimationStateGraphSchema::CreateDefaultNodesForGraph(UEdGraph& Graph) const { // Create the result Create FGraphNodeCreator<UAnimGraphNode_StateResult> NodeCreator(Graph); UAnimGraphNode_StateResult* ResultSinkNode = NodeCreator.CreateNode(); NodeCreator.Finalize(); SetNodeMetaData(ResultSinkNode, FNodeMetadata::DefaultGraphNode); UAnimationStateGraph* TypedGraph = CastChecked<UAnimationStateGraph>(&Graph); TypedGraph->MyResultNode = ResultSinkNode; }
void UAnimationTransitionSchema::CreateDefaultNodesForGraph(UEdGraph& Graph) const { // Create the entry/exit tunnels FGraphNodeCreator<UAnimGraphNode_TransitionResult> NodeCreator(Graph); UAnimGraphNode_TransitionResult* ResultSinkNode = NodeCreator.CreateNode(); NodeCreator.Finalize(); SetNodeMetaData(ResultSinkNode, FNodeMetadata::DefaultGraphNode); UAnimationTransitionGraph* TypedGraph = CastChecked<UAnimationTransitionGraph>(&Graph); TypedGraph->MyResultNode = ResultSinkNode; }
void UAnimationStateMachineSchema::CreateDefaultNodesForGraph(UEdGraph& Graph) const { // Create the entry/exit tunnels FGraphNodeCreator<UAnimStateEntryNode> NodeCreator(Graph); UAnimStateEntryNode* EntryNode = NodeCreator.CreateNode(); NodeCreator.Finalize(); SetNodeMetaData(EntryNode, FNodeMetadata::DefaultGraphNode); if (UAnimationStateMachineGraph* StateMachineGraph = CastChecked<UAnimationStateMachineGraph>(&Graph)) { StateMachineGraph->EntryNode = EntryNode; } }