PFND3D10DDI_CHECKFORMATSUPPORT回调函数 (d3d10umddi.h)
检索设备具有指定格式的功能。
语法
PFND3D10DDI_CHECKFORMATSUPPORT Pfnd3d10ddiCheckformatsupport;
void Pfnd3d10ddiCheckformatsupport(
D3D10DDI_HDEVICE unnamedParam1,
DXGI_FORMAT unnamedParam2,
UINT *unnamedParam3
)
{...}
参数
unnamedParam1
hDevice [in]
显示设备的句柄 (图形上下文) 。
unnamedParam2
格式 [in]
一个DXGI_FORMAT类型的值,该值指示要为其检索功能的像素格式。
unnamedParam3
pFormatCaps [out]
指向变量的指针,该变量接收以下指示功能的有效按位 OR 值。
值 | 说明 |
---|---|
D3D10_DDI_FORMAT_SUPPORT_SHADER_SAMPLE (0x00000001) | 可以使用着色器中的任何筛选器对格式进行采样。 |
D3D10_DDI_FORMAT_SUPPORT_RENDERTARGET (0x00000002) | 格式可以是呈现目标。 |
D3D10_DDI_FORMAT_SUPPORT_BLENDABLE (0x00000004) | 格式是可混合的。 (仅当格式可以是呈现器目标时,才能设置此值。) |
D3D10_DDI_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET (0x00000008) | 格式可以是样本计数大于 1 的呈现目标。 |
D3D10_DDI_FORMAT_SUPPORT_MULTISAMPLE_LOAD (0x00000010) | 格式可用于从多个样本资源中读取单个示例。 |
D3D10_DDI_FORMAT_SUPPORT_NOT_SUPPORTED (0x80000000) | 显示设备根本不支持格式。 请参阅“备注”。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_DECODER_OUTPUT (0x00000020) | 格式可以支持作为解码输出资源。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT (0x00000040) | 格式可以是视频处理器输出资源。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT (0x00000080) | 格式可以是视频处理器输入资源。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_VERTEX_BUFFER (0x00000100) | 格式可以是顶点缓冲区。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_UAV_WRITES (0x00000200) | 可以通过无序访问视图 (UAV) 追加缓冲区写入格式。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_BUFFER (0x00000400) | 格式可以在类型化缓冲区视图中使用。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_CAPTURE (0x00000800) | 格式可以支持作为视频捕获引擎的输出。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_VIDEO_ENCODER (0x00001000) | 可以将格式作为硬件编码媒体基础转换 (MFT) 的输入。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_OUTPUT_MERGER_LOGIC_OP (0x00002000) | 格式支持着色器逻辑操作。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_SHADER_GATHER (0x00004000) | 格式支持“着色器 gather4”资源属性。 从Windows 8开始可用。 |
D3D11_1DDI_FORMAT_SUPPORT_MULTIPLANE_OVERLAY (0x00008000) | 格式支持多平面覆盖。 从Windows 8开始可用。 但是,多平面覆盖仅在 WDDM 1.3 及更高版本的驱动程序中受支持,这些驱动程序是随 Windows 8.1 引入的。 |
D3DWDDM1_3DDI_FORMAT_SUPPORT_TILED (0x00010000) | 格式支持在 D3D10DDIRESOURCE_TEXTURE1D、D3D10DDIRESOURCE_TEXTURE2D 或 D3D10DDIRESOURCE_TEXTURECUBE 类型的平铺资源中使用 。 从 Windows 8.1 开始可用,仅受 WDDM 1.3 及更高版本的驱动程序支持。 |
返回值
无
备注
D3D10_DDI_FORMAT_SUPPORT_NOT_SUPPORTED值仅对以下格式有效:
- DXGI_FORMAT_A8P8
- DXGI_FORMAT_AI44
- DXGI_FORMAT_AYUV
- DXGI_FORMAT_IA44
- DXGI_FORMAT_NV11
- DXGI_FORMAT_P010
- DXGI_FORMAT_P016
- DXGI_FORMAT_P8
- DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
- DXGI_FORMAT_Y210
- DXGI_FORMAT_Y216
- DXGI_FORMAT_Y410
- DXGI_FORMAT_Y416
对于这些格式,只应设置此位。
驱动程序可以使用 pfnSetErrorCb 回调函数设置错误代码,如下所示:
- 如果 Format 参数中的格式不存在,则设置为 E_FAIL。
- 如果 pFormatCaps 参数为 NULL,则设置为 E_INVALIDARG。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows Vista 和更高版本的 Windows 操作系统中可用。 |
目标平台 | 桌面 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |