0

古いゲームを 1 つ入手し、Cocos2d 2.0 SDK を更新することにしました。コンパイルエラーが発生しました。

b2Vec2 gravity;
gravity.Set(0.0f, -10.0f);
self.world = new b2World(gravity, true);

エラー: 'b2World' の初期化に一致するコンストラクターがありません

これを以下のコードに変更すると動作しますが、Box2D デバッグ形状は描画されません。

self.world = new b2World(gravity);

デバッグ形状を表示する正しい方法で Box2d ワールドを初期化する方法は?

4

2 に答える 2

2

GLESDebugDraw ファイルを、新しく作成された cocos2d 2.0 + Box2D プロジェクトにあるファイルに置き換えます。お使いのバージョンは、cocos2d 2.x では機能しない GL ES 1.1 コマンドをまだ使用しています。

于 2013-03-23T09:52:52.827 に答える
1

最後に、この描画関数と GLESDebugDraw ファイルを置き換えることで、デバッグの形を取りました。

-(void) draw
{
    [super draw];
    ccGLEnableVertexAttribs( kCCVertexAttribFlag_Position );
    kmGLPushMatrix();
    self.world->DrawDebugData();
    kmGLPopMatrix();
}
于 2013-03-23T15:28:22.963 に答える