AnimationTreePlayer
Inherits: Node < Object
已弃用。 使用节点图(node graph)来混合动画的动画播放器。由 AnimationTree 取代。
描述
已弃用。 节点图示工具,用于混合绑定在AnimationPlayer上的多个动画。对于给角色或其他基于骨架的配件制作动画特别有用。它可以结合几个动画来形成一个所需的姿势。
它从AnimationPlayer节点获取Animation,并根据图示将它们混合起来。
参阅AnimationTree以获得该节点的更全面的功能替代。
教程
属性
方法
void | add_node ( NodeType type, String id ) |
void | advance ( float delta ) |
Animation | animation_node_get_animation ( String id ) const |
String | animation_node_get_master_animation ( String id ) const |
float | animation_node_get_position ( String id ) const |
void | animation_node_set_animation ( String id, Animation animation ) |
void | animation_node_set_filter_path ( String id, NodePath path, bool enable ) |
void | animation_node_set_master_animation ( String id, String source ) |
bool | are_nodes_connected ( String id, String dst_id, int dst_input_idx ) const |
float | blend2_node_get_amount ( String id ) const |
void | blend2_node_set_amount ( String id, float blend ) |
void | blend2_node_set_filter_path ( String id, NodePath path, bool enable ) |
float | blend3_node_get_amount ( String id ) const |
void | blend3_node_set_amount ( String id, float blend ) |
Vector2 | blend4_node_get_amount ( String id ) const |
void | blend4_node_set_amount ( String id, Vector2 blend ) |
Error | connect_nodes ( String id, String dst_id, int dst_input_idx ) |
void | disconnect_nodes ( String id, int dst_input_idx ) |
PoolStringArray | get_node_list ( ) |
float | mix_node_get_amount ( String id ) const |
void | mix_node_set_amount ( String id, float ratio ) |
bool | node_exists ( String node ) const |
int | node_get_input_count ( String id ) const |
String | node_get_input_source ( String id, int idx ) const |
Vector2 | node_get_position ( String id ) const |
NodeType | node_get_type ( String id ) const |
Error | node_rename ( String node, String new_name ) |
void | node_set_position ( String id, Vector2 screen_position ) |
float | oneshot_node_get_autorestart_delay ( String id ) const |
float | oneshot_node_get_autorestart_random_delay ( String id ) const |
float | oneshot_node_get_fadein_time ( String id ) const |
float | oneshot_node_get_fadeout_time ( String id ) const |
bool | oneshot_node_has_autorestart ( String id ) const |
bool | oneshot_node_is_active ( String id ) const |
void | oneshot_node_set_autorestart ( String id, bool enable ) |
void | oneshot_node_set_autorestart_delay ( String id, float delay_sec ) |
void | oneshot_node_set_autorestart_random_delay ( String id, float rand_sec ) |
void | oneshot_node_set_fadein_time ( String id, float time_sec ) |
void | oneshot_node_set_fadeout_time ( String id, float time_sec ) |
void | oneshot_node_set_filter_path ( String id, NodePath path, bool enable ) |
void | oneshot_node_start ( String id ) |
void | oneshot_node_stop ( String id ) |
void | recompute_caches ( ) |
void | remove_node ( String id ) |
void | reset ( ) |
float | timescale_node_get_scale ( String id ) const |
void | timescale_node_set_scale ( String id, float scale ) |
void | timeseek_node_seek ( String id, float seconds ) |
void | transition_node_delete_input ( String id, int input_idx ) |
int | transition_node_get_current ( String id ) const |
int | transition_node_get_input_count ( String id ) const |
float | transition_node_get_xfade_time ( String id ) const |
bool | transition_node_has_input_auto_advance ( String id, int input_idx ) const |
void | transition_node_set_current ( String id, int input_idx ) |
void | transition_node_set_input_auto_advance ( String id, int input_idx, bool enable ) |
void | transition_node_set_input_count ( String id, int count ) |
void | transition_node_set_xfade_time ( String id, float time_sec ) |
枚举
enum NodeType:
NODE_OUTPUT = 0 —- 输出节点。
NODE_ANIMATION = 1 —- Animation节点。
NODE_ONESHOT = 2 —- OneShot节点。
NODE_MIX = 3 —- Mix 节点。
NODE_BLEND2 = 4 —- Blend2节点。
NODE_BLEND3 = 5 —- Blend3节点。
NODE_BLEND4 = 6 —- Blend4节点。
NODE_TIMESCALE = 7 —- TimeScale节点。
NODE_TIMESEEK = 8 —- TimeSeek节点。
NODE_TRANSITION = 9 —- Transition节点。
enum AnimationProcessMode:
属性说明
Default | false
|
Setter | set_active(value) |
Getter | is_active() |
如果true
,AnimationTreePlayer
就能够播放动画。
Default | NodePath(“..”)
|
Setter | set_base_path(value) |
Getter | get_base_path() |
相对访问其他节点的节点。
它访问骨骼,应该指向AnimationPlayer将指向其根节点的同一个节点。
Default | NodePath(“”)
|
Setter | set_master_player(value) |
Getter | get_master_player() |
通过 AnimationPlayer 的路径,此 AnimationTreePlayer
将动画绑定到动画节点。
设置后,Animation节点可以添加到AnimationPlayer。
Default | 1
|
Setter | set_animation_process_mode(value) |
Getter | get_animation_process_mode() |
更新动画的线程。
方法说明
添加type
节点到图示中,名称为id
。
- void advance ( float delta )
移动动画时间轴上的位置。delta
是移动的时间,单位是秒。当前帧和delta
之间的事件被处理。
返回与AnimationTreePlayer
的动画节点绑定的Animation,名称为id
。
- String animation_node_get_master_animation ( String id ) const
返回与此动画节点绑定的master_player的Animation名称。
返回名称为id
的动画节点的绝对播放时间戳。
将名称为id
的新Animation从master_player绑定到AnimationTreePlayer
的动画节点。
如果enable
为true
,则ID为id
的动画节点将关闭修改path
属性的轨道。修改后的节点的子代继续进行动画处理。
- void animation_node_set_master_animation ( String id, String source )
将master_player中名为source
的Animation绑定到动画节点id
。重新计算缓存。
返回节点id
和dst_id
是否在指定的插槽上连接。
返回给定名称的 Blend2 节点的混合量。
设置Blend2节点的混合量,给定其名称和值。
一个Blend2节点混合两个动画(A和B),混合量在0到1之间。
在0的时候,输出是输入A。接近1的时候,A的影响变小,B的影响变大。在1时,输出是输入B。
如果enable
是true
,名称为id
的Blend2节点会关闭修改path
处属性的轨道。被修改的节点的子节点继续处理动画。
返回给定名称的 Blend3 节点的混合量。
设置一个Blend3节点的混合值,传入节点名和混合值。
Blend3节点使用-1~1之间的一个值来混合3个动画 (A, B-, B+).
值为-1时,输出动画为B-;值从-1到0时,B-的影响减弱,A的影响变强,B+的影响为0;值为0时,输出为动画A;值从0到1时,A的影响减弱,B+的影响变强,B-的影响为0;值为1时,输出为动画B+。
返回给定名称的Blend4节点的混合量。
设置Blend4节点的混合量,给定其名称和值。
Blend4节点可以混合两对动画。
这两对动画像Blend2一样被混合,然后相加在一起。
将节点id
连接到指定输入插槽的dst_id
。
- void disconnect_nodes ( String id, int dst_input_idx )
断开在指定输入插槽连接到id
的节点。
返回包含所有节点名称的PoolStringArray。
返回给定名称的Mix节点的混合量。
设置混合节点的混合量,给定它的名称和值。
混合节点将输入b添加到输入a中,其量由比率给出。
按名称检查节点是否存在。
返回给定节点的输入计数。不同类型的节点有不同的输入数量。
返回给定节点输入的输入源。
返回给定其名称节点在图示中的位置。
获取节点类型,将从NodeType枚举中返回。
重命名图示中的一个节点。
设置节点在图示中的位置,给定其名称和位置。
- float oneshot_node_get_autorestart_delay ( String id ) const
返回给定名称的OneShot节点的自动启动延迟。
- float oneshot_node_get_autorestart_random_delay ( String id ) const
返回给定名称的OneShot节点的自动启动随机延迟。
返回给定名称的OneShot节点的淡入时间。
- float oneshot_node_get_fadeout_time ( String id ) const
返回给定其名称的OneShot节点的淡出时间。
- bool oneshot_node_has_autorestart ( String id ) const
返回OneShot节点是否会根据其名称自动重新启动。
返回指定名称的OneShot节点是否处于活动状态。
- void oneshot_node_set_autorestart ( String id, bool enable )
设置OneShot节点的自动启动属性,给定其名称和值。
- void oneshot_node_set_autorestart_delay ( String id, float delay_sec )
设置OneShot节点的自动启动延迟,给定其名称和值,单位秒。
- void oneshot_node_set_autorestart_random_delay ( String id, float rand_sec )
设置OneShot节点的自动重启随机延迟,给定其名称和数值,单位秒。
- void oneshot_node_set_fadein_time ( String id, float time_sec )
设置OneShot节点的淡入时间,给定其名称和数值,单位秒。
- void oneshot_node_set_fadeout_time ( String id, float time_sec )
设置OneShot节点的淡出时间,给定其名称和数值,单位秒。
如果enable
是true
,ID为id
的OneShot节点会关闭修改path
处属性的轨道。被修改的节点的子节点继续进行动画。
- void oneshot_node_start ( String id )
启动指定名称的OneShot节点。
- void oneshot_node_stop ( String id )
停止名称为id
的OneShot节点。
- void recompute_caches ( )
手动重新计算由动画节点生成的轨道信息缓存。当外部资源修改动画节点的状态时需要用到。
- void remove_node ( String id )
移除名称为id
的动画节点。
重置此 AnimationTreePlayer
。
返回名称为id
的TimeScale节点的时间缩放值。
- void timescale_node_set_scale ( String id, float scale )
设置名称为id
的TimeScale节点的时间缩放为scale
。
时间缩放节点用来加快Animation的速度,如果缩放高于1,就会减慢它们。
如果在混合后应用,会影响到该混合的所有输入动画。
设置名称为id
的TimeSeek节点的时间查寻值为seconds
。
这在Animation或输入的Animation的混合中起到查寻的作用。
- void transition_node_delete_input ( String id, int input_idx )
删除名称为id
的过渡节点的input_idx
的输入。
- int transition_node_get_current ( String id ) const
返回名称为id
的过渡节点的当前评估输入的索引。
- int transition_node_get_input_count ( String id ) const
返回名称为id
的过渡节点的输入数。你可以通过右键点击过渡节点来增加输入。
- float transition_node_get_xfade_time ( String id ) const
返回名称为id
的过渡节点的交叉淡化时间。
- bool transition_node_has_input_auto_advance ( String id, int input_idx ) const
如果过渡节点上名称为id
的input_idx
的输入被设置为在完成后自动前进到下一个输入,则返回true
。
- void transition_node_set_current ( String id, int input_idx )
名称为 id
的过渡节点将其当前输入设置为 input_idx
。
- void transition_node_set_input_auto_advance ( String id, int input_idx, bool enable )
当input_idx
处的输入完成后,名称为id
的过渡节点自动进行到下一个输入。
- void transition_node_set_input_count ( String id, int count )
调整名称为id
的过渡节点的可用输入数。
- void transition_node_set_xfade_time ( String id, float time_sec )
名称为id
的过渡节点将其交叉淡化时间设置为time_sec
。