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