2014-11-29 5 views
0

나는 cocos2djs에서 작동하는 box2d 디버그를 얻으려고합니다. 다음 코드는 오류나 디버그 모양없이 정상적으로 게임을 실행합니다. 내가 어디로 잘못 가고 있니?Cocos2djs의 Box2d DebugDraw

var b2Vec2 = Box2D.Common.Math.b2Vec2 
    , b2World = Box2D.Dynamics.b2World 
    , b2BodyDef = Box2D.Dynamics.b2BodyDef 
    , b2Body = Box2D.Dynamics.b2Body 
    , b2FixtureDef = Box2D.Dynamics.b2FixtureDef 
    , b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape 
    , b2DebugDraw = Box2D.Dynamics.b2DebugDraw; 

// Construct a world object, which will hold and simulate the rigid bodies. 
this.world = new b2World(new b2Vec2(0, -10), true); 
this.world.SetContinuousPhysics(true); 

var debugDraw = new b2DebugDraw(); 
debugDraw.SetSprite(cc.renderContext); 
debugDraw.SetDrawScale(PTM_RATIO); 
debugDraw.SetFillAlpha(0.8); 
debugDraw.SetFlags(b2DebugDraw.e_shapeBit); 
this.world.SetDebugDraw(debugDraw); 

그럼 세계 경계와 물리학 단체를 추가합니다.

미리 감사드립니다. Zain

답변

0

debugDraw를 사용하는 대신 다음을 시도해 보셨습니까? 나는이 다람쥐 통합을 위해 작동합니다 알고

var debugNode = new cc.PhysicsDebugNode(space); debugNode.visible = true; this.addChild(debugNode);

, 내가 Box2D의에 대한 확실하지 않다,하지만 작동합니다.

+0

나중에 시도해 보니 box2d에서 작동하지 않는 것 같습니다. 나는 다람쥐로 옮겨 가면서 js가 더 쉬워 보입니다. – Zain