动画¶
Inherits: Resource < Reference < Object
类别: 核心
简要说明¶
包含用于为引擎中的所有内容设置动画的数据。
方法¶
信号¶
tracks_changed ( )
枚举¶
枚举 TrackType :
TYPE_VALUE = 0 ---值跟踪节点属性中的设置值,但仅限于可以插入的值。
TYPE_TRANSFORM = 1 ---变换轨迹用于更改节点局部变换或骨骼姿势骨骼。过渡是内插的。
TYPE_METHOD = 2 ---方法跟踪每个键具有给定参数的调用函数。
TYPE_BEZIER = 3
TYPE_AUDIO = 4
TYPE_ANIMATION = 5
枚举 InterpolationType :
INTERPOLATION_NEAREST = 0 ---无插值(最近值)。
INTERPOLATION_LINEAR = 1 ---线性插值。
INTERPOLATION_CUBIC = 2 ——三次插值。
枚举 UpdateMode :
UPDATE_CONTINUOUS = 0 ---在关键帧之间更新。
UPDATE_DISCRETE = 1 ---在关键帧处更新并保留该值。
UPDATE_TRIGGER = 2 ---在关键帧处更新。
UPDATE_CAPTURE = 3
描述¶
动画资源包含用于为引擎中的所有内容设置动画的数据。动画分为多个轨迹,每个轨迹必须链接到一个节点。该节点的状态可以通过向轨迹添加定时键(事件)来随时间变化。
# This creates an animation that makes the node "Enemy" move to the right by
# 100 pixels in 1 second.
var animation = Animation.new()
var track_index = animation.add_track(Animation.TYPE_VALUE)
animation.track_set_path(track_index, "Enemy:position.x")
animation.track_insert_key(track_index, 0.0, 0)
animation.track_insert_key(track_index, 0.5, 100)
动画只是数据容器,必须添加到节点,如 AnimationPlayer 或 AnimationTreePlayer 播放。
属性描述¶
float length
违约 |
1.0 |
设定器 |
设置长度(值) |
吸气剂 |
获取长度() |
动画的总长度(秒)。
注: 长度不由最后一个键分隔,因为这一个键可能在结束之前或之后,以确保正确的插值和循环。
bool loop
违约 |
假 |
设定器 |
设置回路(值) |
吸气剂 |
有u循环() |
指示动画必须循环的标志。这用于正确插入动画周期,并提示播放机必须重新启动动画。
float step
违约 |
0.1 |
设定器 |
设置步骤(值) |
吸气剂 |
获取步骤() |
动画步骤值。
方法说明¶
将轨迹添加到动画中。
int audio_track_insert_key ( int track, float time, Resource stream, float start_offset=0, float end_offset=0 )
int bezier_track_insert_key ( int track, float time, float value, Vector2 in_handle=Vector2( 0, 0 ), Vector2 out_handle=Vector2( 0, 0 ) )
void clear ( )
清除动画(清除所有轨迹并全部重置)。
添加一个新曲目,它是给定曲目的副本 to_animation
.
返回指定曲目的索引。如果找不到音轨,返回-1。
int get_track_count ( ) const
返回动画中的轨迹数量。
PoolIntArray method_track_get_key_indices ( int idx, float time_sec, float delta ) const
返回给定位置和增量时间的方法跟踪的所有关键索引。
返回方法跟踪的方法名。
返回在给定轨道中给定键的方法轨道上要调用的参数值。
void remove_track ( int idx )
通过指定跟踪索引删除跟踪。
在给定轨道中按时间查找键索引。或者,只在给出确切时间的情况下找到它。
返回 true
如果轨道在 idx
环绕插值循环。默认情况下,新轨迹环绕插值循环。
InterpolationType track_get_interpolation_type ( int idx ) const
返回给定轨迹的插值类型。
返回给定曲目中的键数。
返回键所在的时间。
返回特定键的过渡曲线(放宽)(请参见内置数学函数 @GDScript.ease )
返回给定轨道中给定键的值。
获取轨迹的路径。有关路径格式的详细信息,请参阅 track_set_path .
获取曲目的类型。
在给定的轨道中插入通用键。
返回 true
如果轨道在索引处 idx
启用。
返回 true
如果导入了给定的曲目。否则,返回 false
.
void track_move_down ( int idx )
向下移动轨迹。
更改轨道的索引位置 idx
到中定义的 to_idx
.
void track_move_up ( int idx )
向上移动轨迹。
在给定的跟踪中按索引删除键。
在给定曲目中按位置(秒)删除键。
启用/禁用给定的曲目。默认情况下启用曲目。
将给定轨道设置为导入或不导入。
如果 true
,轨道 idx
环绕插值循环。
void track_set_interpolation_type ( int idx, InterpolationType interpolation )
设置给定轨迹的插值类型。
设置现有密钥的时间。
为特定键设置过渡曲线(放宽)(请参见内置数学函数 @GDScript.ease )
设置现有键的值。
设置轨迹的路径。路径必须是指向节点的有效场景树路径,并且必须从将复制动画的节点的父节点开始指定路径。控制属性或骨骼的轨迹必须在路径后附加其名称,由分隔 ":"
.
例如, "character/skeleton:ankle"
或 "character/mesh:transform/local"
.
调换赛道 idx
的索引位置 with_idx
.
int transform_track_insert_key ( int idx, float time, Vector3 location, Quat rotation, Vector3 scale )
插入变换轨迹的变换键。
返回给定时间(以秒为单位)变换轨迹的插值值。由3个元素组成的数组:位置 (Vector3 )旋转 (Quat )和规模 (Vector3 )
PoolIntArray value_track_get_key_indices ( int idx, float time_sec, float delta ) const
返回给定位置和增量时间的值跟踪的所有关键索引。
UpdateMode value_track_get_update_mode ( int idx ) const
返回值跟踪的更新模式。
void value_track_set_update_mode ( int idx, UpdateMode mode )
设置更新模式 (UPDATE_*
)价值轨迹。