Post

20Tween

介绍Tween(补间动画)

代码创建流程

1
2
3
4
5
6
#有点像android objectanimator绑定对象给对象的属性做动画
var tree=get_treee() #获取场景树
var tween=tree.create_tween()#创建补间动画
# 或者直接 create_tween()。var tween=create_tween()

tween.tween_property($Player/Camera2D,"zoom",Vector2(2,2),2) #执行动画。参数:节点对象、执行动画属性、最终值(zoom的[x,y],duration)

安顺播放补间动画:只要tween_property函数多条即可

1
2
tween.tween_property($Player/Camera2D,"zoom",Vector2(2,2),2)
tween.tween_property($Player,"modulate:a",0,2)#modulate节点和自节点的RGBA,“:a”只修改 alpha值

同时播放补间动画:set_parallel(true)

1
2
3
tween.set_parallel(true)
tween.tween_property($Player/Camera2D,"zoom",Vector2(2,2),2)
tween.tween_property($Player,"modulate:a",0,2)#modulate节点和自节点的RGBA,“:a”只修改 alpha值

设置起始值

1
tween.tween_property($Player/Camera2D,"zoom",Vector2(2,2),2).from(Vector2(0.6,0.6))

设置过度速度

1
tween.tween_property($Player/Camera2D,"zoom",Vector2(2,2),2).set_trans(Tween.TRANS_LINEAR)#类似android的加速度插值函数(线性、先快后慢等)
This post is licensed under CC BY 4.0 by the author.