cocos2d-x中的box2d(1)-testbed基本结构

小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址http://blog.csdn.net/bill_man

Cocos2d-x中自带了box2d引擎,cocos2d-x中也有cocos2d-x的示例,从本篇起,为了更好的研究box2d,从本篇起讲讲解示例,并进一步研究box2d

首先文件结构如下图所示

cocos2d-x中的box2d(1)-testbed基本结构_第1张图片

Test中是所有示例的.h文件,所有test都继承与Test.h文件中也有实现,从下一篇起,我就依次写一下box2d的例子,我用的是cocos2d-1.0.1-x-0.11.0 release中的例子

首先进入的是Box2dTestBedScene,然后进入MenuLayer,从MenuLayer进入Box2DView,Box2DView的初始化函数如下

cocos2d-x中的box2d(1)-testbed基本结构_第2张图片

定义每帧调用一次tick,另外重写draw函数。

之后进入的每个test都是TestEntry类型的,代码如下

cocos2d-x中的box2d(1)-testbed基本结构_第3张图片

每次进入test,通过create启动。

而在基类test中进行一些共同操作,比如定义世界等初始化内容,如下

cocos2d-x中的box2d(1)-testbed基本结构_第4张图片

然后就是重写需要的碰撞函数

cocos2d-x中的box2d(1)-testbed基本结构_第5张图片

这个函数在碰撞更新之后调用,允许你观察碰撞在被更新处理之前,你可以改变这个碰撞的事件

如有错误之处,希望大家多多指正

下一篇写一下Tumbler例子


你可能感兴趣的:(引擎)