共用方式為


ID3D11DeviceContext::HSSetSamplers 方法 (d3d11.h)

將取樣器狀態的陣列設定為 殼層著色器階段

語法

void HSSetSamplers(
  [in]           UINT               StartSlot,
  [in]           UINT               NumSamplers,
  [in, optional] ID3D11SamplerState * const *ppSamplers
);

參數

[in] StartSlot

類型: UINT

索引到以零起始的陣列,以開始將取樣器設定為從 0 (到 D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - 1) 的範圍。

[in] NumSamplers

類型: UINT

陣列中的取樣器數目。 每個管線階段總共有 16 個取樣器位置, (範圍從 0 到 D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot) 。

[in, optional] ppSamplers

類型: ID3D11SamplerState*

範例狀態介面陣列的指標 (請參閱 ID3D11SamplerState) 。 請參閱<備註>。

傳回值

備註

任何取樣器都可以設定為 NULL;這會叫用默認狀態,其定義為下列專案。


//Default sampler state:
D3D11_SAMPLER_DESC SamplerDesc;
SamplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;
SamplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_CLAMP;
SamplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_CLAMP;
SamplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_CLAMP;
SamplerDesc.MipLODBias = 0;
SamplerDesc.MaxAnisotropy = 1;
SamplerDesc.ComparisonFunc = D3D11_COMPARISON_NEVER;
SamplerDesc.BorderColor[0] = 1.0f;
SamplerDesc.BorderColor[1] = 1.0f;
SamplerDesc.BorderColor[2] = 1.0f;
SamplerDesc.BorderColor[3] = 1.0f;
SamplerDesc.MinLOD = -FLT_MAX;
SamplerDesc.MaxLOD = FLT_MAX;
		

方法會保存傳入之介面的參考。 這與 Direct3D 10 中的裝置狀態行為不同。

規格需求

需求
目標平台 Windows
標頭 d3d11.h
程式庫 D3D11.lib

另請參閱

ID3D11DeviceContext