AnimationNodeStateMachinePlayback

继承: Resource < RefCounted < Object

AnimationNodeStateMachine提供回放控制。

描述

允许控制使用AnimationNodeStateMachine创建的AnimationTree状态机。使用$AnimationTree.get("parameters/playback")检索。

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

属性

bool

resource_local_to_scene

true (overrides Resource)

方法

float

get_current_length() const

StringName

get_current_node() const

float

get_current_play_position() const

StringName

get_fading_from_node() const

Array[StringName]

get_travel_path() const

bool

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*算法内部计算的当前行进路径。


bool is_playing() const 🔗

如果正在播放动画,则返回true


void next() 🔗

如果有通过旅行或自动前进的下一条路径,则立即从当前状态转换到下一个状态。


void start(node: StringName, reset: bool = true) 🔗

开始播放给定的动画。

如果resettrue,则从头开始播放动画。


void stop() 🔗

停止当前正在播放的动画。


void travel(to_node: StringName, reset_on_teleport: bool = true) 🔗

从当前状态到另一个状态的转换,遵循最短路径。

如果路径没有从当前状态连接,动画将在状态传送后播放。

如果reset_on_teleporttrue,则从旅行导致传送时开始播放动画。