2016-07-08 15 views
0

GL_ARB_fragment_programGL_ARB_vertex_programには、GL_PROGRAM_UNDER_NATIVE_LIMITS_ARBのようなクエリがあります。クエリの結果がGL_FALSEの場合、プログラムはソフトウェアで実行される可能性が高くなります。GLSLシェーダがネイティブリミットになっていることを確認する方法は?

GLSLシェーダまたはプログラムオブジェクトに対してこれをクエリする方法はありますか?

+0

なぜ個々のシェーダに対してクエリを実行する必要がありますか? –

+0

@ t.niese私はこれを単純なものに置き換えることができます。あるいは、シェーダを全く必要としない何かにフォールバックすることもできます。もちろん、リンクされた完全なプログラムオブジェクトのレベルでクエリすることもOKです必ずしも個々の_shader_である必要はありません。 – Ruslan

答えて

0

このようなことをテストするために実行できるクエリはありません。ハードウェア上でシェーダを実行できない場合、標準以外の理由で(より多くのユニフォームを使用するなど)、実装には2つのオプションがあります。ハードウェアで実行するか、単にシェーダをコンパイル/リンクするのに失敗し、理由を説明するメッセージを表示することができます。

関連する問題