問題タブ [glsurfaceview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
2082 参照

android - 同じGLSurfaceViewの両方のカメラビュー上のレンダラー?

同じglsurfaceviewオブジェクトを使用して、カメラビューを表示し、このカメラビュー上にカスタムopenGl図面をレンダリングしようとしています。

しかし、レンダラーなしでサーフェスホルダーを使用する場合は問題なく、ホルダーなしでレンダラーを使用する場合は問題ないことがわかりました。

しかし、アクティビティクラスでホルダーとレンダラーの両方のコードを使用すると、カメラビューしか取得できません。

このコードをsamsungp1000ギャラクシータブで試してみましたが、htc wild fireで試してみると、「アプリケーションが予期せず停止しました...」という例外がスローされ、カメラのプレビューも利用できません。

これがコードです。誰かが助けることができれば、それはありがたいです

================================================== =====マニフェスト===============

0 投票する
1 に答える
567 参照

android - GLSurfaceView :: onSurfaceCreatedでglへの参照を保持しますか?

GLSurfaceView :: onSurfaceCreatedが呼び出されたときに、GL10 glパラメーターへの参照を保持するのは安全ですか?

onSurfaceCreatedより後のある時点でテクスチャを初期化したいのですが、今はわからないので、それへの参照を保持するだけで大​​丈夫かどうか疑問に思いました。

0 投票する
2 に答える
2888 参照

java - GLSurfaceView.Renderer の外で gl テクスチャを作成しますか?

GLSurfaceView.Renderer の実装以外で gl テクスチャを作成する方法はありますか? GL10 gl 変数にアクセスできる場所であるため、onSurfaceCreated メソッドでしかテクスチャを作成できませんでした。コードでオンデマンドでオープン gl テクスチャを作成できず、そのメソッドですべてを作成する必要があるため、制限されています。

あるいは、GLSurfaceView.Renderer の外で GL10 gl 変数を取得する方法はありますか? または、gl テクスチャを作成する別の方法はありますか?

0 投票する
2 に答える
5065 参照

android - Android: OpenGL エフェクトをカメラに適用する

AndroidでGLSurfaceViewを使用してカメラのプレビューを表示し、その表面でOpenGL効果を使用する方法はありますか? 具体的には、加算ブレンド効果。OpenGL が効果を使用できることは知っていますし、カメラを SurfaceView に配置できることも知っていますが、カメラを GLSurfaceView に配置して、そのカメラ プレビューに OpenGL ブレンド効果を適用することはできますか?

0 投票する
1 に答える
911 参照

android - GLSurfaceView を拡張する LinearLayout クラスにどのように配置しますか?

私の質問は簡単です。GLSurfaceView を拡張するクラス TouchSurfaceView があります。3 つの TextViews と Button を下部に、TouchSurfaceView を上部に配置するアクティビティを作成したいのですが、これを XML レイアウトでどのように読み取るかわかりません。

0 投票する
4 に答える
6739 参照

android - GLSurfaceView.Rendererは、onDrawFrame()でバッファーを複数回交換できますか?

私のopenGLゲームでは、通常、onDrawFrame()のGLSurfaceView.Rendererクラスを使用してシーンを描画します。ただし、ロード画面を表示しているときに、データの各項目がロードされた後に画面を強制的に描画して、ロードバーを表示できるようにします。

どういうわけか、この描画呼び出し中にバッファスワップを強制することは可能ですか?私の唯一の選択肢は、複数のフレームにまたがってロードをずらすことです。これは、多くのやり直しを意味します。

私が呼び出そうとしているのはeglSwapBuffers()だと思いますが、GLSurfaceViewまたはGLSurfaceView.Rendererからeglコンテキストにアクセスする方法が見つかりません。

お時間をいただきありがとうございます。

0 投票する
2 に答える
1516 参照

android - OpenGl: GLSurfaceView.Renderer または GLSurfaceView?

これら 2 つの違いは何ですか。また、どちらが優れているのでしょうか。

0 投票する
1 に答える
7370 参照

android - EGL ディスプレイ/コンテキストを特定の GLSurfaceView に取得する方法

これはおそらく広すぎる私の元の質問のフォローアップです(これはおそらく具体的すぎるかもしれませんが、ニュートンの方法を適用できるかもしれません)。

私の特定の状況は次のとおりです。Javaのみを使用するAndroid上のOpenGL ES 2.0(JNI /ネイティブコードなし)。

EGL と Android の GLES 実装がどのように連携するか (または連携しないか) を理解しようとしています。EGL インターフェイス (API) が Android の Java 中心のアクティビティ ベースの OS に適していないように見えるため、問題が発生しています。

具体的な例として: GLSurfaceView をサブクラス化し、XML レイアウトを使用してインスタンスを作成し、それを使用findViewById()して参照を取得します。このアプローチを使用すると、テクスチャ付きの三角形の例があります動作しています (Android 2.2 上の GLES 2.0、API レベル 8)。この例では EGL を使用しません。学習課題として、EGL を使用して書き直したいと思いました。

私が見つけることができるすべての例は、 と を使用eglGetDisplay()eglInitialize()、脂っこい黒い煙のパフでコンテキストを作成します。私が見つけた例、参考文献、質問はどれも、特に ES2.0/EGL/Android/Java には当てはまりません。私は何かを完全に見逃していますか?この質問は関連していますが (私はそう思います)、回答がなく、ES 2.0 プログラミング ガイドで使用されている例はスタンドアロンの C 実装です。

0 投票する
1 に答える
599 参照

android - 2 つの GLSurfaceView の同期

GLES20 コンテキストの共有に関する質問を見つけましたが... 、私の状況はもう少し広いと思います。

で 2 つGLSurfaceViewの が互いに重ねられていFrameLayoutます。(1 つは、私のアプリケーションでライブラリとして実行されているandroid_page_curlからのHarismCurlViewです。もう 1 つの GLSurfaceView は、私自身のものです。) 各 GLSurfaceView は、独自のスレッドで実行されています。

GLSurfaceView にビットマップを表示する際に一貫性のない問題が発生しています。ビットマップが完全に描画される場合もあれば、一部しか表示されない場合もあります。2 つの GLSurfaceView が画面メモリへのアクセスをめぐって競合し、互いに踏みつけているに違いありません。

それを解決するには、 をsynchronize呼び出す前にアプリケーションで単一のブール値を使用できると考えていましたが、スレッドを軽くonDrawFrame()読んだ後...もう少し思慮深くする必要があると思います。

synchronizeオーバーレイされた 2 つの GLSurfaceViews を適切に再生するには、どのオブジェクトで、どのコードを使用する必要がありますか?

0 投票する
1 に答える
748 参照

android - 入力のGameLoopチェック(Android / GlSurfaceView)

スレッドに基本的なゲームループがある場合、次のようになります。

実際に入力をチェックする方法(タッチスクリーンなど)を考えていました。ビュークラスでonTouchEvent()を使用できることはわかっていますが、ゲームループから確認したいと思います。これはどのように行われますか?

ps:GlSurfaceViewでAndroidを使用しています。