0

状況を説明するには: 私の OpenGL View Controller は、XCode (いわばデバッグ モード) 経由でインストールすると正常に動作しますが、In House Distribution 経由でインストールするとクラッシュします (そのために HockeyApp が使用されます)。

XCode経由でエラーなしですべて正常に動作しますが、61行目で壊れます: https://gist.github.com/jonasbark/561e7e66671b041f0107

uniforms[UNIFORM_MVP_MATRIX] = glGetUniformLocation(program, "mvp_matrix");

理由は本当にわかりません。シェーダー ファイルを NSString としてハード コードしようとしましたが、うまくいきませんでした。In House Distribution を使用してなぜ機能しないのか、私には意味がありません...

これが例外の理由です。

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00000000

uniforms フィールド変数は次のように導入されます。

enum {
    UNIFORM_MVP_MATRIX,
    UNIFORM_TEXTURE,
    NUM_UNIFORMS
};
GLint uniforms[NUM_UNIFORMS];

ソース コードを参照したい場合に備えて: http://www.endodigital.com/opengl-es-2-0-on-the-iphone/ --> EDCubeDemo_AppendixA.zipに基づいています。

4

1 に答える 1

0

わかりました...最終的にこれを解決しました。に交換GLint uniforms[NUM_UNIFORMS];GLint uniforms[2];て動作しました。リリース バージョンで失敗する理由がわかりません。ある種のコンパイラの最適化である必要があります...

于 2013-07-08T12:35:15.483 に答える