D3D11_SAMPLER_DESC 结构 (d3d11.h)
描述采样器状态。
语法
typedef struct D3D11_SAMPLER_DESC {
D3D11_FILTER Filter;
D3D11_TEXTURE_ADDRESS_MODE AddressU;
D3D11_TEXTURE_ADDRESS_MODE AddressV;
D3D11_TEXTURE_ADDRESS_MODE AddressW;
FLOAT MipLODBias;
UINT MaxAnisotropy;
D3D11_COMPARISON_FUNC ComparisonFunc;
FLOAT BorderColor[4];
FLOAT MinLOD;
FLOAT MaxLOD;
} D3D11_SAMPLER_DESC;
成员
Filter
类型: D3D11_FILTER
采样纹理时使用的筛选方法 (看到 D3D11_FILTER) 。
AddressU
类型: D3D11_TEXTURE_ADDRESS_MODE
用于解析超出 0 到 1 范围的 u 纹理坐标的方法 (请参阅 D3D11_TEXTURE_ADDRESS_MODE) 。
AddressV
类型: D3D11_TEXTURE_ADDRESS_MODE
用于解析超出 0 到 1 范围的 v 纹理坐标的方法。
AddressW
类型: D3D11_TEXTURE_ADDRESS_MODE
用于解析超出 0 到 1 范围的 w 纹理坐标的方法。
MipLODBias
类型: FLOAT
与计算的 mipmap 级别的偏移量。 例如,如果 Direct3D 计算纹理应在 mipmap 级别 3 采样,而 MipLODBias 为 2,则将在 mipmap 级别 5 对纹理采样。
MaxAnisotropy
类型: UINT
如果在 Filter 中指定了D3D11_FILTER_ANISOTROPIC或D3D11_FILTER_COMPARISON_ANISOTROPIC,则使用固定值。 有效值介于 1 和 16 之间。
ComparisonFunc
一个函数,用于将采样数据与现有采样数据进行比较。 函数选项在 D3D11_COMPARISON_FUNC中列出。
BorderColor[4]
类型: FLOAT[4]
如果为 AddressU、AddressV 或 AddressW 指定了D3D11_TEXTURE_ADDRESS_BORDER,则使用的边框颜色。 范围必须介于 0.0 和 1.0(含)之间。
MinLOD
类型: FLOAT
要固定访问的 mipmap 范围的下端,其中 0 是最大和最详细的 mipmap 级别,任何高于该级别的级别都不太详细。
MaxLOD
类型: FLOAT
要限制访问的 mipmap 范围的上端,其中 0 是最大和最详细的 mipmap 级别,高于该级别的任何级别都不太详细。 此值必须大于或等于 MinLOD。 如果 LOD 没有上限,请将此值设置为较大的值,例如D3D11_FLOAT32_MAX。
注解
这些是采样器状态的默认值。
状态 | 默认值 |
---|---|
筛选器 | D3D11_FILTER_MIN_MAG_MIP_LINEAR |
AddressU | D3D11_TEXTURE_ADDRESS_CLAMP |
AddressV | D3D11_TEXTURE_ADDRESS_CLAMP |
AddressW | D3D11_TEXTURE_ADDRESS_CLAMP |
MinLOD | -3.402823466e+38F (-FLT_MAX) |
MaxLOD | 3.402823466e+38F (FLT_MAX) |
MipMapLODBias | 0.0f |
MaxAnisotropy | 1 |
ComparisonFunc | D3D11_COMPARISON_NEVER |
BorderColor | float4 (1.0f、1.0f、1.0f、1.0f) |
纹理 | N/A |
要求
要求 | 值 |
---|---|
Header | d3d11.h |