0

Ok、

だから私は2つの定数バッファを期待するシェーダーを持っていますが、私が使用するとき

ID3D11DeviceContext::UpdateSubresource

そして、SubResourceを1(2番目のバッファー)に設定すると、警告が表示されます(エラー...):

D3D11: ERROR: ID3D11DeviceContext::UpdateSubresource: DstSubresource index (1) out of range, must be less than 1. [ RESOURCE_MANIPULATION ERROR #287: UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE ]

エラーは理解できますが、なぜ表示されるのか、つまりなぜ発生するのかはわかりません。

ありがとうございました

4

1 に答える 1

0

SubResourceはTextureArrays/Mipmaps用に設計されているため、たとえば特定のmipスライスの読み取り/書き込みを行うことができます。バッファの場合、SubResourceは常にゼロです(多かれ少なかれ生データであるため)。

SubResourcesに関するいくつかの情報はここにあります

したがって、0を使用して各定数バッファーを更新し、PSSetConstantBuffersを使用して(および必要なステージごとに)各定数バッファーをシェーダースロットに割り当て、それに応じてスタートスロットを選択する必要があります(レジスターと一致する必要があります)。シェーダーの番号)。

于 2013-01-19T20:09:11.267 に答える