なんらかの理由で、EGL コンテキスト クライアント バージョンが OpenGL アプリケーションに設定されません。以下を実行するだけでコンテキストをセットアップします。
final boolean supportEs2 = configurationInfo.reqGlEsVersion >= 0x20000;
if (supportEs2) { //<-- this resolves to true.
mGLView.setEGLContextClientVersion(2);
try {
mGLView.setRenderer(new PongDroidRenderer(getApplicationContext()));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
その後、シェーダーをコンパイルしようとすると、コンテキストが正しく呼び出されないためにランタイム例外が発生します。いくつかの調査の結果、メインスレッドから OpenGL を呼び出すことができないことがわかりましたが、アプリケーション自体がマルチスレッド化されていないことを知っている限り(もちろん、システムはマルチスレッド化されています)。ですから、ここにいる誰かがこれをどのように機能させることができるかについて何か考えがあるかどうかを知りたいと思っています.