AnimationNodeStateMachinePlayback
继承: Resource < RefCounted < Object
为 AnimationNodeStateMachine 提供播放控制。
描述
允许控制使用 AnimationNodeStateMachine 创建的 AnimationTree 状态机。使用 $AnimationTree.get("parameters/playback")
检索。
示例:
GDScriptC#
var state_machine = $AnimationTree.get("parameters/playback")
state_machine.travel("some_state")
var stateMachine = GetNode<AnimationTree>("AnimationTree").Get("parameters/playback").As<AnimationNodeStateMachinePlayback>();
stateMachine.Travel("some_state");
教程
属性
resource_local_to_scene |
|
方法
get_current_length() const | |
get_current_node() const | |
get_current_play_position() const | |
get_fading_from_node() const | |
get_travel_path() const | |
is_playing() const | |
void | next() |
void | start(node: StringName, reset: bool = true) |
void | stop() |
void | travel(to_node: StringName, reset_on_teleport: bool = true) |
方法说明
float get_current_length() const 🔗
返回当前状态长度。
注意:有可能任何 AnimationRootNode 既可以是节点也可以是动画。这意味着在单个状态中可以有多个动画。哪个动画长度会优先,取决于其内部连接的节点。此外,如果过渡未重置,则将返回该点的剩余长度。
StringName get_current_node() const 🔗
返回当前的动画播放状态。
注意:使用交叉叠化时,当前状态会在交叉叠化开始后理解变为下一个状态。
float get_current_play_position() const 🔗
返回当前动画状态内的播放位置。
StringName get_fading_from_node() const 🔗
返回当前淡入淡出动画的开始状态。
Array[StringName] get_travel_path() const 🔗
返回 A* 算法内部计算的当前行进路径。
如果正在播放动画,返回 true
。
void next() 🔗
如果通过行进或自动前进有下一条路径,则立即从当前状态过渡到下一个状态。
void start(node: StringName, reset: bool = true) 🔗
开始播放给定的动画。
如果 reset
为 true
,则动画从头开始播放。
void stop() 🔗
停止当前播放的动画。
void travel(to_node: StringName, reset_on_teleport: bool = true) 🔗
按照最短的路径从当前状态过渡到另一个状态。
如果路径没有连接到当前状态,则动画将在状态传送后播放。
如果 reset_on_teleport
为 true
,当行进导致传送时,该动画将从头开始播放。