2

私は NDK で OpenGL ES 1.1 を使用していますが、それを呼び出すglGenTexturesと、渡した名前ホルダーの値が変更されないことがあります (0 に設定することさえありません)。

  • glGetError0 を返します。エラーはありません。
  • すべての GL コードはonDrawFrame、サーフェス レンダラーから呼び出される JNI メソッド内にあるため、コンテキストは問題になりません。(編集:これは間違った仮定であり、問​​題の原因でした)
  • コードが機能する場合と機能しない場合があります。フレームごとに呼び出しを繰り返すと、約5回試行した後に機能します。(リクエストに応じてグリフを生成しています)。
  • テクスチャの最初のロットは、少なくとも #32 まで作成されますが、その後は行き当たりばったりです。

何もしないように見える理由を知っている人はいglGenTexturesますか?

4

1 に答える 1

3

有効な OpenGL(-ES) コンテキストがアクティブな状態で glGenTextures が呼び出されていますか? 複数のスレッドを使用している場合: OpenGL(-ES) コンテキストは、一度に 1 つのスレッドでのみアクティブにできます。ただし、各スレッドは異なるコンテキストをアクティブにする場合があります。

于 2012-10-22T16:11:35.620 に答える