我是box2d的新手,我必须处理物理引擎。我正在创建灯具和物理机构并设置位置。现在我想在调试模式下查看物理对象。 我访问过很多论坛并试过代码,但没有运气。
我在创建我的世界之后使用以下代码
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);
并覆盖Draw方法并包含GLES_Render.h。 没有编译错误,但调试模式下的Physics对象没有显示。
-(void) draw
{
[super draw];
ccGLEnableVertexAttribs( kCCVertexAttribFlag_Position );
kmGLPushMatrix();
_world->DrawDebugData();
kmGLPopMatrix();
}
如何使用cocos2d / Box2d 2.1版启用Debug Draw或者是否有其他方法可以查看物理对象?
由于
答案 0 :(得分:0)
确定标志时应使用 GLESDebugDraw :
uint32 flags = 0;
flags += GLESDebugDraw::e_shapeBit;
flags += GLESDebugDraw::e_jointBit;
.....
debugDraw->SetFlags(flags);