問題タブ [opengl-es-3.1]

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 投票する
1 に答える
80 参照

opengl-es - Compute Shader がレンダリング API 呼び出しを遅くしているのはなぜですか?

計算シェーダーを使用して入力バッファー データを処理し、imagestore() を使用して出力テクスチャーとして保存しています。

コンピューティング シェーダーを実行した後、3 つのレンダー コールを順番に実行しました。

コンピュート シェーダー コード:

コード:

ここでは、計算シェーダーを使用した後、唯一の 2 番目の描画呼び出しに時間がかかっています。

glFinish() が glMemoryBarrier() の後に呼び出されると、execute_compute() 呼び出しのみが遅くなります。コンピューティング シェーダーが後続の描画呼び出しを遅くしているのはなぜですか? glFinish() は本当に必要ですか?