各GLSurfaceView
は独自のEGLContextで構築されます。 GLSurfaceViews
複数の同じコンテキストを使用して同じテクスチャにアクセスすると、(hereのように)すべてのGPUで機能しないようです。Android:別々のEGLコンテキストでGLSurfaceViews間のテクスチャを共有
質問GL_TEXTURE_EXTERNAL_OES
のテクスチャを複数のGLSurfaceViews
のデフォルトの別々のコンテキストで共有する方法があるかどうかです。デフォルトでは、GL_TEXTURE_EXTERNAL_OES
を作成するスレッドのみがテクスチャにアクセスできますが、別のEGLコンテキストの他のスレッドにこのテクスチャを読み込ませ、別のGLSurfaceViews
にレンダリングさせる方法を探しています。
ガイダンスをいただければ幸いです。ありがとうございました。
恐ろしい、おかげです!私は最初に 'GLSurfaceViews'を使用しようとしていましたが、コードは本当に面倒でした。なぜなら、このためのAPIサポートが組み込まれていないからです。私は通常の 'SurfaceView'アプローチを進めます。ちなみに、何か似たようなことをしている(つまり、orindary SurfaceViewでEGLContextを作成する)オープンソースプロジェクトは何ですか? Grafikaが提供する最も似ているのは、https://github.com/google/grafika/blob/master/src/com/android/grafika/HardwareScalerActivity.java – Michael
です。Grafikaには、GLESを使用してSurfaceViewにレンダリングする複数のアクティビティがあります。 com.android.grafika.glesパッケージ全体を単に持ち上げることをお勧めします。あなたが外部のテクスチャを使って作業しているなら、おそらく他のビットのいくつかが欲しいでしょう。 「カメラからのテクスチャ」と「レコードGLアプリ」は別の例です。 – fadden