跳到主要内容

AnimationNodeStateMachine

继承

AnimationRootNode

简要描述

用于动画控制的状态机。

描述

在图结构中包含多个表示动画状态的节点。节点转换可以设置为自动或通过代码,使用最短路径算法。从AnimationTree节点检索AnimationNodeStateMachinePlayback对象以编程方式控制它。

示例:

var state_machine = $AnimationTree.get("parameters/playback")
state_machine.travel("some_state")

方法

返回值类型方法名称
voidadd_node(name: String, node: AnimationNode, position: Vector2 = Vector2( 0, 0 ))
voidadd_transition(from: String, to: String, transition: AnimationNodeStateMachineTransition)
Stringget_end_node() const
Vector2get_graph_offset() const
AnimationNodeget_node(name: String) const
Stringget_node_name(node: AnimationNode) const
Vector2get_node_position(name: String) const
Stringget_start_node() const
AnimationNodeStateMachineTransitionget_transition(idx: int) const
intget_transition_count() const
Stringget_transition_from(idx: int) const
Stringget_transition_to(idx: int) const
boolhas_node(name: String) const
boolhas_transition(from: String, to: String) const
voidremove_node(name: String)
voidremove_transition(from: String, to: String)
voidremove_transition_by_index(idx: int)
voidrename_node(name: String, new_name: String)
voidset_end_node(name: String)
voidset_graph_offset(offset: Vector2)
voidset_node_position(name: String, position: Vector2)
voidset_start_node(name: String)

方法说明

  • add_node add_node(name: String, node: AnimationNode, position: Vector2 = Vector2( 0, 0 ))

向图中添加一个新节点。position被用来在编辑器中显示。


  • add_transition add_transition(from: String, to: String, transition: AnimationNodeStateMachineTransition)

在给定节点之间添加过渡转换。


  • get_end_node get_end_node() const

返回图形的结束节点。用来在编辑器中显示。


  • get_graph_offset get_graph_offset() const

返回图形的绘制偏移量。


  • get_node get_node(name: String) const

返回具有给定名称的动画节点。


  • get_node_name get_node_name(node: AnimationNode) const

返回给定动画节点的名称。


  • get_node_position get_node_position(name: String) const

返回给定节点的坐标。


  • get_start_node get_start_node() const

返回图形的结束节点。


  • get_transition get_transition(idx: int) const

返回给定的过渡转换。


  • get_transition_count get_transition_count() const

返回图结构的连接数。


  • get_transition_from get_transition_from(idx: int) const

返回给定过渡转换的起始节点。


  • get_transition_to get_transition_to(idx: int) const

返回给定过渡转换的结束节点。


  • has_node has_node(name: String) const

如果图结构包含给定的节点,则返回true


  • has_transition has_transition(from: String, to: String) const

如果给定节点之间存在过渡,则返回true


  • remove_node remove_node(name: String)

从图结构中删除给定的节点。


  • remove_transition remove_transition(from: String, to: String)

删除两个指定节点之间的过渡转换。


  • remove_transition_by_index remove_transition_by_index(idx: int)

按索引删除给定的过渡转换。


  • rename_node rename_node(name: String, new_name: String)

重命名给定节点。


  • set_end_node set_end_node(name: String)

将给定节点设置为图结构终点。


  • set_graph_offset set_graph_offset(offset: Vector2)

设置图结构的绘制偏移量。用来在编辑器中显示。


  • set_node_position set_node_position(name: String, position: Vector2)

设置节点的坐标。用来在编辑器中显示。


  • set_start_node set_start_node(name: String)

将给定节点设置为图结构起点。