閱讀英文

共用方式為


指定 GDI 硬體加速渲染作業

呼叫 DxgkDdiRenderKm 函式時,作系統會指定透過 pRenderKmArgs 參數執行的 GDI 硬體加速轉譯作業類型。 DirectX 圖形核心子系統(Dxgkrnl.sys)的顯示埠驅動程式會將 pRenderKmArgs->pCommand 成員設定為指向包含一組可變大小 DXGK_RENDERKM_COMMAND 結構的命令緩衝區。 它也會將 pRenderKmArgs-pCommandLength> 成員設定為命令緩衝區的大小,以位元組為單位。

驅動程式必須將輸入DXGK_RENDERKM_COMMAND命令緩衝區轉譯成 DMA 緩衝區命令,並建置修補程式位置清單。

DXGK_RENDERKM_COMMAND包含指定 GDI 硬體加速轉譯作業特性的成員,如下表所述。

渲染作業 DXGK_RENDERKM_COMMAND成員 對應的DXGK_GDIARG_XXX結構 對應 DXGK_RENDERKM_OPERATION 值

Alpha 混合

AlphaBlend

DXGK_GDIARG_ALPHABLEND

DXGK_GDIOP_ALPHABLEND = 3

位元塊傳輸且無縮放

BitBlt

DXGK_GDIARG_BITBLT

DXGK_GDIOP_BITBLT = 1

ClearType 和反鋸齒文字像素混合

ClearTypeBlend

DXGK_GDIARG_CLEARTYPEBLEND

DXGK_GDIOP_CLEARTYPEBLEND = 7

顏色填充

ColorFill

DXGK_GDIARG_COLORFILL

DXGK_GDIOP_COLORFILL = 2

伸展位元區塊傳輸

StretchBlt

DXGK_GDIARG_STRETCHBLT

DXGK_GDIOP_STRETCHBLT = 4

具有透明度的位區塊傳輸

TransparentBlt

DXGK_GDIARG_TRANSPARENTBLT

DXGK_GDIOP_TRANSPARENTBLT = 6

作系統會使用 DXGK_RENDERKM_COMMAND 的 OpCode 成員來指出顯示迷你埠驅動程式必須處理的特定 GDI 硬體加速轉譯作業。 OpCode 成員的類型為 DXGK_RENDERKM_OPERATION,數據表中顯示的值。

作系統也會提供DXGK_RENDERKM_COMMAND CommandSize 成員的適當值,指定目前轉譯命令的大小,以位元組為單位,包括 OpCode 的值和命令中的子矩形數目。

DXGK_GDIARG_TRANSPARENTBLT-Flags> 成員所包含的D3DKM_TRANSPARENTBLTFLAGS結構中,提供了顯示配接器執行具有透明度之位區塊傳輸功能的詳細資訊。