D3D12 でリソースをさまざまなシェーダー ステージにバインドするにはどうすればよいですか?
1 つの頂点シェーダーと 1 つのピクセルシェーダーの 2 つのシェーダーを作成しました。
頂点シェーダーは次のとおりです。
//VertexShader.vs
float4 main(float3 posL : POSITION, uniform float4x4 gWVP) : SV_POSITION
{
return mul(float4(posL, 1.0f), gWVP);
}
ピクセルシェーダーは次のとおりです。
//PixelShader.ps
float4 main(float4 PosH : SV_POSITION, uniform float4 Color) : SV_Target
{
return Color;
}
関数を使用してこれら 2 つのシェーダーをコンパイルし、D3DCompile
それを反映してD3DReflect
、シェーダーの説明で BoundResorces メンバーを調べると、両方とも $Params という定数バッファーがあり、それぞれ均一変数が含まれています。問題は、これらのバッファーの両方がスロット 0 にバインドされていることです。リソースをバインドするときは、リソースをリソース スロットにバインドできる ID3D12RootSignature インターフェイスを使用する必要があります。頂点シェーダーの $Params バッファーを頂点シェーダーのみにバインドし、ピクセル シェーダーの $Params バッファーをピクセル シェーダーのみにバインドするにはどうすればよいですか?
前もって感謝します、
フィリネーター