4

OpenGL Uniform Buffer Objects と Shader Storage Buffers を調べています。質問は両方に当てはまると思いますが、UBO に焦点を当てましょう。

チュートリアルでは、「ブロック インデックス」と「バインディング ポイント インデックス」は別物だと言っているようで、シェーダーに複数の UBO がある場合は、バインディング インデックスを指定する必要があります。

layout(binding = 0) uniform first_buffer  {...};
layout(binding = 1) uniform second_buffer {...};

ブロック インデックスはリンカによって決定されglGetUniformBlockIndex、.binding=NglBindBufferBase(GL_UNIFORM_BUFFER, N, ubo_handle)

ブロック インデックスとバインディング ポイントの違いは何ですか?

binding=Nレイアウトでを省略できますか? ではどうなりglBindBufferBaseますか?

これはSSBOでも同じですか?

4

1 に答える 1