PFND3DWDDM2_6DDI_QUERY_SCANOUT_CAPS回调函数 (d3d10umddi.h)

查询是否应在准备翻转操作时进行转换。

语法

PFND3DWDDM2_6DDI_QUERY_SCANOUT_CAPS Pfnd3dwddm26DdiQueryScanoutCaps;

void Pfnd3dwddm26DdiQueryScanoutCaps(
  D3D10DDI_HDEVICE unnamedParam1,
  D3D10DDI_HRESOURCE unnamedParam2,
  UINT Subresource,
  D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId,
  UINT PlaneIdx,
  D3DWDDM2_6DDI_SCANOUT_FLAGS *pFlags
)
{...}

参数

unnamedParam1

hDevice [in]

设备的句柄。

unnamedParam2

hResource [in]

与分配关联的资源的句柄。

Subresource

子资源索引。

VidPnSourceId

视频呈现网络拓扑路径中视频呈现源的从零开始的 ID。

PlaneIdx

平面的索引。

pFlags

指示转换类型的 D3DWDDM2_6DDI_SCANOUT_FLAGS 值。

返回值

备注

在 WDDM 2.6 中,D3D11 运行时将更新为在发出全屏或多平面覆盖翻转之前调用此 DDI。 如果结果是需要转换,或者需要转换,并且没有 API 请求禁用转换,则运行时将调用 PFND3DWDDM2_6DDI_PREPARE_SCANOUT_TRANSFORMATION

请注意,在Windows 10版本 1903 中存在的窗口翻转模型期间,运行时不会调用PFND3DWDDM2_6DDI_QUERY_SCANOUT_CAPS和PFND3DWDDM2_6DDI_PREPARE_SCANOUT_TRANSFORMATION,因为运行时不知道这是否会发生,如果是这样,它将使用哪个 VidPnSource 和平面。

驱动程序不能在 D3DWDDM2_6DDI_SCANOUT_FLAGS 中同时设置 D3DWDDM2_6DDI_SCANOUT_FLAG_TRANSFORMATION_REQUIRED 和 D3DWDDM2_6DDI_SCANOUT_FLAG_TRANSFORMATION_DESIRED 标志。

无论是否发生转换,驱动程序都应使用 D3DWDDM2_6DDI_SCANOUT_FLAG_UNPREDICTABLE_TIMING 标志向运行时指示生成的分配是否遵循可预测的扫描输出计时。 此信息将用于调整前端缓冲区呈现安全边距。

要求

要求
最低受支持的客户端 Windows 10 版本 1903
标头 d3d10umddi.h