[ Libgdx 学习笔记 ] - Action 动作类与 Actions(管理类,动作池) [待更新]

来源:互联网 发布:java中try catch怎么用 编辑:程序博客网 时间:2024/05/16 05:39

Libgdx 中有舞台 Stage,演员Actor, 为了方便实际游戏开发,她也提供了众多 Action 的子类来实现简单动画效果, 而一般我们都是组合使用以达到更好的游戏效果,

 按其功能形式主要可分为 表现类,控制类比如, 表现类: MoveToAction,RotateToAction,ScaleToAction等,控制类: SequenceAction,ParallelAction等


 MoveToAction:


 api 介绍: 

    将一个 actor 从当前位置移动到指定位置


主要方法:

  begin(): 初始化当前xy坐标

 setPosition(float x,float y): 设置终点xy坐标

 update(float percent): 按指定百分比更新


示例代码: 

  MoveToAction moveto = Actions.moveTo(240, 160, duration);



RotateToAction:

 api 介绍: 

  将一个 actor 从当前值旋转到指定值  

主要方法: 

 begin(): 

 update(float percent): 按指定百分比更新

 setRotation(float rotation): 设置旋转值


示例代码: 

 RotateToAction rotateto = Actions.rotateTo(rotate, duration);



ScaleToAction:

 api 介绍: 

    将 一个 actor 的 从当前值放缩到指定值

 主要方法:

  begin(): 初始化当前缩放值

 setScale(float x,float y): 设置目标xy坐标

 update(float percent): 按指定百分比更新


示例代码: ScaleToAction scaleto = Actions.scaleTo(scale, scale, duration);



SequenceAction:

 api介绍:按顺序执行Actions,即按传入的Action参数顺序执行


功能用途: sequence(Action action1, Action action2, Action action3, .....) 


参数传入的都是需要使用的Action,sequence他会按照传入的参数顺序,全部按顺序执行的,


实例代码: 


SequenceAction alpha = Actions.sequence(Actions.fadeIn(duration), endAction );

 

ParallelAction 类


api介绍:并行执行传入的Action类,无论传入顺序如何,都是同时执行Action.


功能用途:parallel(Action action1, Action action2, Action action3) 


无论传入的先后如何,都是并行执行的,即同时执行的.

实例代码:

ParallelAction Paction = Actions.parallel(moveto,  rotateto, alpha);

 

 


原创粉丝点击