2

初めて、Samsung GT-N8000 で cocos2d-2.0-x-2.0.4 を使用して Android アプリを開発しているので、このトピックについて考えている人がいれば助けてください。

このデバイスのシェーダーではすべて正常に動作しますが、デバイスがロック モードになり、ロックが解除されたときにエラーが見つかりました。

4

1 に答える 1

2

Y A。同じ問題がありました。「shadercache」に追加されたカスタム シェーダーが何であれ、アプリがバックグラウンドになり、そこから再開されると機能しなくなります。カスタム シェーダーをリセットして、その場所に新しいシェーダーを追加してみてください。

詳細についてCCShaderCache::reloadDefaultShaders()は、アプリの再開と呼ばれるものを確認してください。

  CCGLProgram * program = CCShaderCache::sharedShaderCache()->programForKey("customshader");
   //reset the old
    if(program)
        program->reset();

{
    CCGLProgram * p = new CCGLProgram();
    .....
    .....
    p->updateUniforms();
    //add new shader
    CCShaderCache::sharedShaderCache()->addProgram(p, "customshader");
    p->release();

}
于 2013-07-04T10:27:03.257 に答える