1

最初に Box2D なしで Cocos2D 2.1 プロジェクトを作成し、後で Box2D を追加しました。これまでのところ、唯一の問題は、私のプロジェクトがデフォルトで OpenGL ES 2 を使用しているように見え、Box2D のプロジェクトが OpenGL ES 1 を使用していることです。これはデバッグ描画メソッドです。

-(void) draw
{
    glDisable(GL_TEXTURE_2D);
    glDisableClientState(GL_COLOR_ARRAY);
    glDisableClientState(GL_TEXTURE_COORD_ARRAY);

    _world->DrawDebugData();

    // restore default GL states
    glEnable(GL_TEXTURE_2D);
    glEnableClientState(GL_COLOR_ARRAY);
    glEnableClientState(GL_TEXTURE_COORD_ARRAY);
}

GL_COLOR_ARRATおよびGL_TEXTURE_COORD_ARRAYOGL2 用に定義されておらず、コンパイラ エラーが発生しました。プロジェクトでデバッグ描画を行うためのオプションは何ですか?

4

1 に答える 1

0

Cocos2D の 2.0 への移行ガイド を参照してください。draw()特にカスタム機能に注目。Cocos2D は 2.x で多くの OpenGL 呼び出しを内部的に処理するため、作成している OpenGL 呼び出しを Cocos2D が使用するものに変更する必要があるように思えます。私も最近この問題に遭遇しました。

于 2013-09-08T17:06:06.463 に答える