D3D10_SAMPLER_DESC結構 (d3d10.h)
描述取樣器狀態。
語法
typedef struct D3D10_SAMPLER_DESC {
D3D10_FILTER Filter;
D3D10_TEXTURE_ADDRESS_MODE AddressU;
D3D10_TEXTURE_ADDRESS_MODE AddressV;
D3D10_TEXTURE_ADDRESS_MODE AddressW;
FLOAT MipLODBias;
UINT MaxAnisotropy;
D3D10_COMPARISON_FUNC ComparisonFunc;
FLOAT BorderColor[4];
FLOAT MinLOD;
FLOAT MaxLOD;
} D3D10_SAMPLER_DESC;
成員
Filter
類型: D3D10_FILTER
取樣紋理時要使用的篩選方法 (請參閱 D3D10_FILTER) 。
AddressU
類型: D3D10_TEXTURE_ADDRESS_MODE
用來解析超出 0 到 1 範圍的 u 紋理座標的方法, (請參閱 D3D10_TEXTURE_ADDRESS_MODE) 。
AddressV
類型: D3D10_TEXTURE_ADDRESS_MODE
用來解析超出 0 到 1 範圍的 v 紋理座標的方法。
AddressW
類型: D3D10_TEXTURE_ADDRESS_MODE
用來解析超出 0 到 1 範圍的 w 紋理座標的方法。
MipLODBias
類型: FLOAT
從計算的 mipmap 層級位移。 例如,如果 Direct3D 計算出紋理應在 mipmap 層級 3 取樣,而 MipLODBias 為 2,則會在 mipmap 層級 5 取樣紋理。
MaxAnisotropy
類型: UINT
如果在 Filter 中指定D3D10_FILTER_ANISOTROPIC或D3D10_FILTER_COMPARISON_ANISOTROPIC,則會使用限制值。 有效值為介於 1 到 16 之間。
ComparisonFunc
會比較取樣數據與現有取樣數據的函式。 函式選項會列在 D3D10_COMPARISON_FUNC中。
BorderColor[4]
類型: FLOAT
如果已為 AddressU、AddressV 或 AddressW 指定D3D10_TEXTURE_ADDRESS_BORDER,則要使用的框線色彩。 範圍必須介於 0.0 到 1.0 之間。
MinLOD
類型: FLOAT
要限制存取的 mipmap 範圍下限,其中 0 是最大且最詳細的 mipmap 層級,且比該層級更不詳細的任何層級。
MaxLOD
類型: FLOAT
要限制存取的 mipmap 範圍上端,其中 0 是最大且最詳細的 mipmap 層級,且任何高於該層級的層級較不詳細。 此值必須大於或等於MinLOD。 在 LOD 上沒有上限,請將此值設定為大型值,例如D3D10_FLOAT32_MAX。
備註
這些是取樣器狀態的預設值。
狀態 | 預設值 |
---|---|
篩選 | Min_Mag_Mip_Point |
AddressU | Clamp |
AddressV | Clamp |
AddressW | Clamp |
MinLOD | 0.0f |
MaxLOD | 3.402823466e+38F (FLT_MAX) |
MipMapLODBias | 0.0f |
MaxAnisotropy | 16 |
ComparisonFunc | 永不 |
BorderColor | float4 (0.0f、0.0f、0.0f、0.0f) |
紋理 | N/A |
規格需求
需求 | 值 |
---|---|
標頭 | d3d10.h |