加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

【v2.x OGE教程 18】 Entity相关

发布时间:2020-12-14 19:14:47 所属栏目:百科 来源:网络整理
导读:让游戏设计变灵活的方法之一,就是使用实体 / 组件式设计方法,该方法将所有物体都看作 Entity 对象,而不是为每种物体设计一个类。在屏幕中所绘制的所有东西都是实体( 场景、层、文字、 几何图形、线条 、 精灵 等 )。这些实体对象稍后会被动态地设置属性


让游戏设计变灵活的方法之一,就是使用实体/组件式设计方法,该方法将所有物体都看作Entity对象,而不是为每种物体设计一个类。在屏幕中所绘制的所有东西都是实体(场景、层、文字、几何图形、线条精灵)。这些实体对象稍后会被动态地设置属性(或组件),使之对应的做出改变。

1.更新相关

Engine以逻辑线程及GL线程以数据同步的方式对游戏进程进行更新,Entity更新其中onUpdateonDraw方法,onUpdate方法中IgnoreUpdate就是判断是否更新逻辑(包括属性参数,如坐标等)onDraw方法中是否绘图根据Visible判断。

2.触摸相关

Entity中有onTouchonAreaTouched方法,Engine中对事件进行分发,在onTouch中进行处理,传递到onAreaTouched,所以重写onAreaTouched时要设置,Entity.setIgnoreTouch(false),不然在onTouch时就过滤了导致onAreaTouched没有响应onAreaTouched的返回值是指是否已处理事件

3.坐标转换

因为EntityparentChild的相对概念,所以对应坐标也有相对的说法,坐标的转换也就包含在内了。

举例:

convertLocalToSceneCoordinates将当前坐标转换EntityScene的坐标

...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读