OGE引擎的改动器功能非常强大,为我们提供了丰富的改动器的实现类,能够改动实体的属性。提供了移动、旋转、缩放、透明、自己定义序列、同步、循环等功能,并且改变的效果能够当场生效。也能够在某一个时间段内生效并且能够提供一些缓动函数达到更加丰富的效果。

一、Modifier创建

使用实例:

,ballRegion,this.getVertexBufferObjectManager());

);

ball.registerEntityModifier(moveModifier);

AlphaModifier:控制alpha变化的改动器

ScaleModifier:控制缩放变化的改动器

RotationModifier:控制旋转变化的改动器

ColorModifier:控制颜色变化的改动器

LoopEntityModifier:装载一个或多个IEntityModifier的循环改动器

SequenceEntityModifier:装载一个或多个IEntityModifier的顺序改动器

ParallelEntityModifier:装载一个或多个IEntityModifier的同步改动器(例:同一时候对一个Entity放大并旋转)

......

二、EaseFunction使用(缓动函数)

IEntity ball =new Sprite

(0,0,ballRegion,this.getVertexBufferObjectManager());

MoveXModifier moveModifier = new MoveXModifier

(0.5f,-ball.getWidth(),0,EaseBackInOut.getInstance());

ball.registerEntityModifier(moveModifier);

在创建Modifier的构造函数中,有个IEaseFunction接口。填入EaseXXX.getInstance();

三、Modifier注冊

当须要使用Modifier时须要调用Entity.registerEntityModifier(final IEntityModifier pEntityModifier)方法进行注冊。

四、Modifier反注冊

在BaseModifier<T>中有一个域autoUnregisterWhenFinished,默认是true,代表Modifier执行完就自己主动反注冊,手动反注冊是调用Entity.unregisterEntityModifier(final IEntityModifier pEntityModifier)。

五、Modifier监听

Modifier构造函数中IEntityModifierListener代表Modifier监听

//Modifier開始时

public void onModifierStarted(final IModifier<T> pModifier, final T pItem);

//结束Modifier时

public void onModifierFinished(final IModifier<T> pModifier, final T pItem);

六、Modifier管理

在Entity中,EntityModifierList是管理当前Entity的Modifier列表,事实上质是个ArrayList,注冊与反注冊事实上就是在这个List中add或者remove处理。

【v2.x OGE教程 16】 Modifier使用相关的更多相关文章

  1. 【v2.x OGE教程 20】粒子效果

    1.介绍 粒子系统表示三维计算机图形学中模拟一些特定的模糊现象的技术.而这些现象用其他传统的渲染技术难以实现的真实感的 game physics.常常使用粒子系统模拟的现象有火.爆炸.烟.水流.火花. ...

  2. 【v2.x OGE教程 19】 引擎状态控制

    1.手机button监听 OGE中提供了在BaseGameLauncher(GameLauncher的父类)和IScene(Scene实现的接口)中定义了onKeyUp和onKeyDown的方法.使得 ...

  3. 【v2.x OGE教程 17】事务处理

    游戏代码中常常有些逻辑须要处理.因此OGE引擎加入了一个IUpdateHandler的类. IUpdateHandler类是OGE引擎中使用频率很之高的组件之中的一个,其本身是一个接口.内部有onUp ...

  4. 【v2.x OGE教程 12】 关卡编辑器帮助文档

    ] 关卡编辑器帮助文档 一.简单介绍 关卡编辑器用于游戏关卡界面元素的可视化编辑,包含元素的位置.尺寸以及其他自己定义属性.通过解析生成的数据文件就可以获取关卡信息,并能随时调整.以降低开发工作量,提 ...

  5. 【v2.x OGE教程 11】 动画编辑器帮助文档

    ] 动画编辑器帮助文档 版本号 日期 作者 说明 1.0 2014-9-3 橙子游戏 文档创建       一.简单介绍 动画编辑器用于游戏动画的可视化编辑,支持序列帧动画和关键帧动画.通过解析生成的 ...

  6. 【v2.x OGE课程 15】 布局相关

    1.父亲和儿子的关系 我们可以Entity类看到非常多parent(父)与child(子)这种字眼,这是游戏引擎中常有的概念,简单而言是一种has-a的关系 watermark/2/text/aHR0 ...

  7. NPOI 教程 - 3.2 打印相关设置

    转:http://www.cnblogs.com/wolfplan/archive/2013/01/13/2858991.html NPOI 教程 - 3.2 打印相关设置   打印设置主要包括方向设 ...

  8. 你所不知道的 CSS 阴影技巧与细节 滚动视差?CSS 不在话下 神奇的选择器 :focus-within 当角色转换为面试官之后 NPOI 教程 - 3.2 打印相关设置 前端XSS相关整理 委托入门案例

    你所不知道的 CSS 阴影技巧与细节   关于 CSS 阴影,之前已经有写过一篇,box-shadow 与 filter:drop-shadow 详解及奇技淫巧,介绍了一些关于 box-shadow  ...

  9. [译]Vulkan教程(16)图形管道基础之总结

    [译]Vulkan教程(16)图形管道基础之总结 Conclusion 总结 We can now combine all of the structures and objects from the ...

随机推荐

  1. Android网站

    http://blog.csdn.net/airsaid/article/details/52902299 android调用传感器的代码 http://blog.csdn.net/huangbiao ...

  2. mybatis generator 覆盖xml文件

    mybatis generator默认采用追加方式生成,所以我们如果要重新生成代码的时候那么要先删除原来的文件. 解决办法: 1:创建一个自定义补丁类. OverwriteXmlPlugin.java ...

  3. 德尔福 XE5 安卓权限设置

    http://delphi.org/2013/10/delphi-xe5-android-uses-permissions/ The permissions required by a Delphi ...

  4. jQuery中Ajax事件beforesend及各参数含义1

    jQuery中Ajax事件beforesend及各参数含义 转自:http://blog.sina.com.cn/s/blog_609f9fdd0100wprz.html Ajax会触发很多事件. 有 ...

  5. python 获取路径

    获取目录路径和文件路径 import osfor root, dirs, files in os.walk(".", topdown=False): # ‘.’为获取脚本所在路径下 ...

  6. sql 触发器 针对一张表数据写入 另一张表 的增删改

    ALTER TRIGGER [dbo].[tri_test2] ON [dbo].[student] for INSERT,DELETE,UPDATEAS BEGIN if not exists (s ...

  7. 用js 转化大小写

    function capitalize(string){ var words =string.split(" "); for(var i=0;i<words.length;i ...

  8. BZOJ 1565 植物大战僵尸 最大权闭合子图+网络流

    题意: 植物大战僵尸,一个n*m的格子,每 个格子里有一个植物,每个植物有两个属性: (1)价值: (2)保护集合,也就是这个植物可以保护矩阵中的某些格子. 现在你是僵尸,你每次只能从(i,m) 格子 ...

  9. 当执行计划中出现BITMAP CONVERSION TO ROWIDS关键字时,需要注意了。

    前言 前些天优化了一些耗费buffers较多的SQL,但系统CPU降低的效果不明显,于是又拉了awr报告,查看了SQL ordered by Gets排名前列的SQL. 分析 SQL代码: selec ...

  10. Cropping multiple images the same way

    The tools we’ll be using are =GIMP= and =mogrify= (from the ImageMagick suite), so make sure that yo ...