2

HLSL シェーダー モデル 5.0 には、非スカラー型の RWTexture2D リソースからデータをロードできないという制限があることを理解しています。つまり、以下は違法です。

    RWTexture2D<float4> __color;
    float4 c = __color[PixelCoord];  // error here

では、回避策は正確には何ですか?次のように、計算シェーダーの float4 バッファーに蓄積しようとしています。

    c = computeColor( ... );
    __color[PixelCoord] += c;
4

1 に答える 1

0

やってみてください:

float4 c = __color.Load( int3( UV, 0 ) );

UV は、サンプリングするテクセルのスクリーン空間 (0 -> 解像度) の xy 座標です。

書き込む必要がある場合は、シェーダー リソース ビューではなく、UAV からバインドされていることを確認してください。

于 2014-07-29T02:21:27.583 に答える