PFND3D11_1DDI_CHECKDIRECTFLIPSUPPORT回调函数 (d3d10umddi.h)
由桌面窗口管理器调用 (DWM) 来验证用户模式驱动程序是否支持直接翻转操作,其中视频内存在应用程序的托管主分配与 DWM 的托管主分配之间无缝翻转。
语法
PFND3D11_1DDI_CHECKDIRECTFLIPSUPPORT Pfnd3d111DdiCheckdirectflipsupport;
void Pfnd3d111DdiCheckdirectflipsupport(
D3D10DDI_HDEVICE unnamedParam1,
D3D10DDI_HRESOURCE unnamedParam2,
D3D10DDI_HRESOURCE unnamedParam3,
UINT CheckDirectFlipFlags,
[out] BOOL *pSupported
)
{...}
参数
unnamedParam1
hDevice [in]
显示设备的句柄 (图形上下文) 。
unnamedParam2
hResource1
应用程序的交换链中的资源。
unnamedParam3
hResource2
DWM 交换链中的资源。
CheckDirectFlipFlags
如果此参数的值为 D3D11_1DDI_CHECK_DIRECT_FLIP_IMMEDIATE,则无缝翻转应立即发生,并且不必与 VSync 中断同步。
[out] pSupported
如果驱动程序可以在应用程序的托管主分配与 DWM 的托管主分配之间无缝翻转视频内存,则设置为 TRUE 。 否则,设置为 FALSE。
返回值
无
备注
在 DWM 尝试呈现给直接翻转交换链之前,至少调用一次此函数。 在每次模式更改发生后,或者在 DWM 出于任何原因重新创建自己的交换链后,也会调用它。
用户模式驱动程序应确保应用程序的托管主分配和 DWM 具有以下兼容资源:
- 立体声资源。
- 多个示例抗锯齿 (MSAA) 格式。
- 重排格式。 如果重排只能在每个 VSync 间隔更改,请确保 CheckDirectFlipFlags 参数的值没有 D3D11_1DDI_CHECK_DIRECT_FLIP_IMMEDIATE。
- 应使用 D3DDDI_ALLOCATIONINFO 结构中的同一 VidPnSourceId 值创建这两个托管主分配。
- 显示适配器配置已链接。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 |
最低受支持的服务器 | Windows Server 2012 |
目标平台 | 桌面 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |