D3DKMT_RENDERFLAGS结构(d3dkmthk.h)
D3DKMT_RENDERFLAGS结构标识在调用 D3DKMTRender 函数时要呈现的命令缓冲区的类型。
语法
typedef struct _D3DKMT_RENDERFLAGS {
UINT ResizeCommandBuffer : 1;
UINT ResizeAllocationList : 1;
UINT ResizePatchLocationList : 1;
UINT NullRendering : 1;
UINT PresentRedirected : 1;
UINT RenderKm : 1;
UINT RenderKmReadback : 1;
UINT Reserved : 25;
} D3DKMT_RENDERFLAGS;
成员
ResizeCommandBuffer
一个 UINT 值,该值指定是否调整命令缓冲区的大小。 驱动程序将请求的大小置于 NewCommandBufferSizeD3DKMT_RENDER 结构的成员中。 由于驱动程序的大小调整请求可能是不可能的,因此驱动程序必须始终验证返回的大小值。
设置此成员等效于设置 32 位值的第一位(0x00000001)。
ResizeAllocationList
一个 UINT 值,该值指定是否调整分配列表的大小。 驱动程序将请求的元素数置于 NewAllocationListSizeD3DKMT_RENDER 结构的成员中。 由于驱动程序的大小调整请求可能是不可能的,因此驱动程序必须始终验证返回的大小值。
设置此成员相当于设置 32 位值的第二位(0x00000002)。
ResizePatchLocationList
一个 UINT 值,该值指定是否调整修补程序位置列表的大小。 驱动程序将请求的元素数放入 NewPatchLocationListSizeD3DKMT_RENDER 结构的成员中。 由于驱动程序的大小调整请求可能是不可能的,因此驱动程序必须始终验证返回的大小值。
设置此成员相当于设置 32 位值的第三位(0x00000004)。
NullRendering
一个 UINT 值,该值指定图形处理单元(GPU)是否应处理呈现上下文的任何命令。 NullRendering 位字段标志设置为通知 GPU 不处理呈现上下文的任何命令。 仅在性能调查和调试期间设置 NullRendering 位字段标志,以模拟仍必须执行 DMA 缓冲区提交和信号开销的无限快呈现引擎。 典型作期间永远不会设置 NullRendering。
设置此成员相当于设置 32 位 值 成员的第四位(0x00000008)。
PresentRedirected
一个 UINT 值,该值指定是否重定向当前命令。 即使命令在 OpenGl ICD 中已完成,该命令也包含一个帧的完成。
设置此成员相当于设置 32 位值的第五位(0x00000010)。
RenderKm
在 Windows 7 及更高版本中受支持。
一个 UINT 值,该值指定 OpenGL ICD 是否提供指向要在 ICD 调用 D3DKMTRender 函数中呈现的命令缓冲区的指针。 如果设置了此标志,运行时不会调用显示微型端口驱动程序的 DxgkDdiRender 函数。 如果设置了此标志,运行时将调用显示微型端口驱动程序的 DxgkDdiRenderKm 函数。
设置此成员等效于设置 32 位值的第六位(0x00000020)。
RenderKmReadback
Reserved
此成员是保留的,应设置为零。 设置此成员相当于将 32 位值的剩余 26 位(0xFFFFFFC0)设置为零。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows Vista |
标头 | d3dkmthk.h (包括 D3dkmthk.h) |