0

指定された均一ブロックがどのバインディングインデックスにもバインドされていない場合、 glGetActiveUniformBlockwithで何が返されますか?http://www.opengl.org/sdk/docs/man4/xhtml/glGetActiveUniformBlock.xmlによると:GL_UNIFORM_BLOCK_BINDING

以前に均一ブロックが指定されていない場合は、ゼロが返されます。

バインドされていないブロックに対してゼロが返されることを意味しますか?はいの場合、プログラムリンケージ後、すべてのunifromブロックがデフォルトでゼロビニングインデックスにバインドされることを意味しますか?繰り返しますが、「はい」の場合、指定されたブロックがゼロにバインドされているのか、それともインデックスにバインドされていないのかをどのように判断できますか?

4

1 に答える 1

0

最初の2つの質問に対して、はい。

繰り返しますが、「はい」の場合、指定されたブロックがゼロにバインドされているのか、それともインデックスにバインドされていないのかをどのように判断できますか?

あなたはそうしない。それではまた、それはどのような目的に役立つでしょうか?これらは、コードまたはシェーダーから設定する必要があります。どちらの場合も、設定したので何が設定されたかがわかります。ユーザーにバインディングを指定するように求めるシェーダーツールを作成しているのでない限り、それは問題ではありません。

そして、そのようなツールを作成している場合は、すべてのバインディングが何であるかをユーザーに示すだけです。複数の統一ブロックが同じインデックスを使用している場合、ユーザーが競合を解決するまで(または、それが本当に必要なものであることを確認するまで)続行することは違法です。

于 2013-01-14T20:19:17.173 に答える