Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
When the DxgkDdiRenderKm function is called, the operating system specifies the type of GDI hardware-accelerated rendering operation to perform through the pRenderKmArgs parameter. The display port driver of the DirectX graphics kernel subsystem (Dxgkrnl.sys) sets the pRenderKmArgs->pCommand member to point to a command buffer that contains an array of variable-size DXGK_RENDERKM_COMMAND structures. It also sets the pRenderKmArgs->pCommandLength member to the size of the command buffer, in bytes.
The driver must translate the input DXGK_RENDERKM_COMMAND command buffer into DMA buffer commands and build the patch ___location list.
DXGK_RENDERKM_COMMAND contains members that specify characteristics of GDI hardware-accelerated rendering operations, as described in the following table.
Rendering Operation | DXGK_RENDERKM_COMMAND Member | Corresponding DXGK_GDIARG_XXX Structure | Corresponding DXGK_RENDERKM_OPERATION Value |
---|---|---|---|
alpha blend |
AlphaBlend |
DXGK_GDIOP_ALPHABLEND = 3 |
|
bit-block transfer with no stretching |
BitBlt |
DXGK_GDIOP_BITBLT = 1 |
|
ClearType and antialiased text pixel blend |
ClearTypeBlend |
DXGK_GDIOP_CLEARTYPEBLEND = 7 |
|
color fill |
ColorFill |
DXGK_GDIOP_COLORFILL = 2 |
|
stretched bit-block transfer |
StretchBlt |
DXGK_GDIOP_STRETCHBLT = 4 |
|
bit-block transfer with transparency |
TransparentBlt |
DXGK_GDIOP_TRANSPARENTBLT = 6 |
The operating system uses the OpCode member of DXGK_RENDERKM_COMMAND to indicate the specific GDI hardware-accelerated rendering operation that the display miniport driver must process. The OpCode member is of type DXGK_RENDERKM_OPERATION, with values shown in the table.
The operating system will also supply the appropriate value of the DXGK_RENDERKM_COMMAND CommandSize member, which specifies the size of the current rendering command, in bytes, including the value of OpCode and the number of sub-rectangles in the command.
Further information about the capability of the display adapter to perform a bit-block transfer with transparency is provided in the D3DKM_TRANSPARENTBLTFLAGS structure contained in the DXGK_GDIARG_TRANSPARENTBLT->Flags member.