Cocos2d-x Box2D debugDraw

高人就谈不上了,最近开始学cocos2d-x,前天刚刚做了个东西,正好需要加入debugDraw,和你分享下经验吧
1 cocos2d中testcpp->box2dTestBed文件夹,下面有GLES-Render.h/GLES-Render.cpp,这两个文件先要拷到你的项目中
2 在你的helloworldscene.h中创建  GLESDebugDraw *m_DebugDraw 对象 再写个 void draw()方法
3 在helloworldscene.cpp中 init()函数里:
 //PTM_RATIO是box2d中单位米和像素转换比率 #define PTM_RATIO 32
 void  HelloWorld2::setupDebugDraw()
{
 m_debugDraw = new GLESDebugDraw(PTM_RATIO);
world->SetDebugDraw(m_debugDraw);
        uint32 flags = 0;
        flags += b2Draw::e_shapeBit;
        flags += b2Draw::e_jointBit;
        flags += b2Draw::e_aabbBit;
        flags += b2Draw::e_pairBit;
        flags += b2Draw::e_centerOfMassBit;
        m_debugDraw->SetFlags(flags);
}


void HelloWorld2::draw()
{
     //
    // IMPORTANT:
    // This is only for debug purposes
    // It is recommend to disable it
    CCLayer::draw();


    ccGLEnableVertexAttribs( kCCVertexAttribFlag_Position );


    kmGLPushMatrix();


    world->DrawDebugData();


    kmGLPopMatrix();


    CHECK_GL_ERROR_DEBUG();

}


这些就可以画出刚体了,但好像不会绘制关节,还有就是如果你的刚体上加图片了,刚体绘制会被遮挡到图片后面 也许也会露出一点点边框能看到,那就这样了,祝你成功!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值