本文使用的libgdx是0.92版本,和现在的最新版可能有一些不一样的地方。全文内容仅供参考。
上一篇说到UI,然后之前说到舞台,现在我们可以很轻松的构建一出戏了。
因为actor类在绘制是以x,y值为基准,所以我们可以通过控制x,y值变化演员的位置,但是演员的其他效果需要配合Action类进行操作。
Action类是一个抽象类,所有的具体实现都在com.badlogic.gdx.scenes.scene2d.actions包中。
而包中的类依功能而言可以分为两类:
- 控制Action
- 表现Action
控制Action没有直接表现效果,它操作的对象是表现Action。
比如Delay。
表现Action就是直接的表现效果,继承自AnimationAction,操作对象是Actor。
比如MoveTo。
现在挨着说吧:
控制类:
延迟duration秒执行action。
一直执行action。
并行(同时)执行actions。
重复action times次。
按顺序执行actions。
Remove $ ()
删除所有Action。
表现类:
淡入淡出效果
duration秒改变至alpha。
用duration移动到x,y处。
用duration秒旋转rotation度。
ScaleTo $ (float scaleX, float scaleY, float duration)
缩放x到scaleX,y到scaleY,用时duration秒。
一个个写例子太麻烦了,而且实际运用中也多是多个组合运用,下面来看一个综合性的示例:
我们的主角是
通过action的组合实现闪烁,飞动,旋转等效果。
代码如下:
效果(图片有点大…多等等):
其实每个action的用法都很简单,主要问题是怎么组合排列来显示一种符合需求的效果。
我发现libgdx的更新不是一般快,每天都有几个版本的。那个通过文件配置UI样式让我觉得非常有意思,但是具体操作中有诸多问题。
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
转载自夜明的孤行灯
本文链接地址: https://www.huangyunkun.com/2011/11/18/libgdx_6/