0

シェーダー ベースの地形を開発しています。VTF を使用して、頂点シェーダーで高さデータをフェッチします。私の問題は、頂点シェーダーでハイトマップをサンプリングすると、戻り値が常にゼロになることです。

Texture2D texture;
SamplerState sampleType;
float height = texture.SampleLevel(sampleType, float4(input.tex, 0, 0), 0);

D3DX11CreateShaderResourceViewFromFile(device, heightmap, NULL, NULL, &texture) 関数を使用して BMP ファイル (256x256x24 ビット) から読み込まれ、deviceContext->PSSetShaderResources(0, 1, &texture) を使用して頂点シェーダーに渡されたテクスチャ。機能レベルは D3D_FEATURE_LEVEL_10_0 で、シェーダー プロファイルは vs_4_0 です。

4

1 に答える 1

0

deviceContext->PSSetShaderResources(0, 1, &texture) を呼び出しています。

つまり、テクスチャをピクセル シェーダーに渡します。代わりに、テクスチャとサンプラーを頂点シェーダーにバインドする必要があります。

VSSetSamplersVSSetShaderResources

代わりは。

于 2013-10-01T08:36:09.680 に答える