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

Cocos2d-x结合Cocosbuilder开发游戏大致流程

发布时间:2020-12-14 16:32:06 所属栏目:百科 来源:网络整理
导读:pb的5种类: custom class :不可见用户自定义类 ,如实现函数的多态 standard class :标准不可见空间 扩展类 custom visual :用户自定义 可见类 External Visual: 外部可视类,如ocx引入 Standard Visual: PB标准可视空间扩展 “Control”和“Object”的区别

pb的5种类:

custom class :不可见用户自定义类 ,如实现函数的多态
standard class :标准不可见空间 扩展类
custom visual :用户自定义 可见类
External Visual: 外部可视类,如ocx引入
Standard Visual: PB标准可视空间扩展


“Control”和“Object”的区别:

在PB里,“Control”和“Object”都是类,只不过前者是可视类,后者是不可视类,叫法不同罢了。无论使用哪种方式创建的,对于PB库画板来说,都是UserObject,通过Insert-Object-UserObject或Insert-Control-UserObject都可以把它插入到Window里,当然,这个对象应该是可视的。另外的插入办法是通过PB的IDE左侧的对象树,直接用鼠标Drag就可以了,这种方法不仅可以插入可视的UserObject,还可以插入不可视的类(可以通过View-Non Visual object llist看到它)


<===============>

在布局方面:完全使用Cocosbuilder来搭建。Cocosbuilder中创建好ccbi文件后,要关联Custom class,variable members, selector等,在代码中可以获取ccbi中所有的节点,并对其进行控制。创建ccb文件时主要有root为CCLayer和CCNode两种方式。所有位置,以及节点间的从属关系,引用关系都可以在ccbi中设置好。游戏中的场景都应该是Layer,所有游戏中的对象都应该是Node.



在逻辑方面:在代码中,Layer应该继承CCLayer,读取ccbi中的主Layer,代码中应该有OnEnter()和OnExit()的控制Layer的方法,有Update()的刷新全局的方法。所有的游戏对象都应该继承自己定义的GameObject类,该类继承至CCNode,并且有Update()等方法,因此我们需要在Layer中的每一帧的Update中遍历其所有子节点,并且调用它们各自的Update方法,达到整个游戏的更新。当然我们还需要其他的MenuLayer、backGround类等,它们共同组成了一个GameScene,在该Scene中,我们还需要处理游戏中比如游戏结束,过关等逻辑。



PS: cocos2d-x读取ccbi主要用到CCBAnimationManager、CCBAnimationManagerDeleger、CCBReader;

读取ccbi可以使用readNodeGraphFromFile、createSceneWithNodeGraphFromFile 前者返回一个Node,后者返回一个Scene

整个游戏的构架大致如此。

(编辑:李大同)

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

    推荐文章
      热点阅读