D3DKMDT_GDISURFACETYPE列挙 (d3dkmdt.h)

D3DKMDT_GDISURFACETYPE列挙は、リダイレクトのためにデスクトップ ウィンドウ マネージャー (DWM) によって使用されるロック可能なサーフェスの種類を示します。

構文

typedef enum _D3DKMDT_GDISURFACETYPE {
  D3DKMDT_GDISURFACE_INVALID,
  D3DKMDT_GDISURFACE_TEXTURE,
  D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE,
  D3DKMDT_GDISURFACE_STAGING,
  D3DKMDT_GDISURFACE_LOOKUPTABLE,
  D3DKMDT_GDISURFACE_EXISTINGSYSMEM,
  D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE,
  D3DKMDT_GDISURFACE_TEXTURE_CROSSADAPTER,
  D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE_CROSSADAPTER
} D3DKMDT_GDISURFACETYPE;

定数

 
D3DKMDT_GDISURFACE_INVALID
ドライバーにはこの値が表示されません。
D3DKMDT_GDISURFACE_TEXTURE
サーフェスに次のプロパティがあることを示します。



  • それは1レベルのテクスチャを持っています。



  • CPU には表示されず、ビデオ メモリ マネージャーによって共有サーフェスとして作成されます。



  • これはユーザー モード ドライバーによって開き、DWM コンポジション中にテクスチャとして使用されます。



  • これは、DirectX レンダリングのレンダー ターゲットとしてユーザー モード ドライバーによって使用されます。



  • これは、GDI ハードウェアアクセラレータ操作のソースまたは宛先サーフェスとして使用されます。


D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE
サーフェスに次のプロパティがあることを示します。



  • これは CPU に表示され、CPU によって広く使用されます。 割り当ては、線形形式で、キャッシュコヒーレント GPU 絞りセグメントである必要があります。



  • これは、GDI ハードウェアアクセラレータ操作のソース サーフェスとして使用されます。



  • これは、bitblt (コピーのみ) GDI 操作の変換先サーフェスとして使用されます。



  • そのピッチは、ディスプレイ ミニポート ドライバーによって返される必要があります。



  • そのピッチ値とサーフェス アドレスは、DXGK_PRESENTATIONCAPS 構造体の AlignmentShift メンバーの値 (つまり、DXGK_DRIVERCAPS-PresentationCaps.AlignmentShift>) に揃える必要があります。


D3DKMDT_GDISURFACE_STAGING
サーフェスに次のプロパティがあることを示します。



  • CPU には表示されません。



  • これは、GDI ハードウェアアクセラレータ操作のソースまたは宛先サーフェスとして使用されます。



  • これは、GDI bitblt (コピーのみ) 操作でソースまたはコピー先のサーフェスとして使用されます。


D3DKMDT_GDISURFACE_LOOKUPTABLE
サーフェスに次のプロパティがあることを示します。



  • CPU には表示されません。



  • ClearTypeBlend および OpCode で指定されたコマンドの処理中にのみ使用されます。DXGK_RENDERKM_COMMAND構造体のDXGK_GDIOP_BITBLT (コピーのみ) メンバー。



  • 形式は、 D3DDDIFORMAT列挙の D3DDDIFMT_A8値によって定義されます。



  • ガンマ参照割り当ては 1 回作成され、初期化後に変更されることはありません。 割り当ては、D3DKMDT_GDISURFACE_STAGING_CPUVISIBLEサーフェスからDXGK_RENDERKM_COMMAND Opcode.DXGK_GDIOP_BITBLT> コマンドを発行することによって、D3DDDIFMT_A8形式で初期化されます。


D3DKMDT_GDISURFACE_EXISTINGSYSMEM
サーフェスに次のプロパティがあることを示します。



  • CPU に表示されます。 割り当ては、線形形式で、キャッシュコヒーレント GPU 絞りセグメントである必要があります。



  • そのピッチ値とサーフェス アドレスは、DXGK_PRESENTATIONCAPS 構造体の AlignmentShift メンバーの値 (つまり、DXGK_DRIVERCAPS-PresentationCaps.AlignmentShift>) に揃える必要があります。



  • サーフェス アドレスがドライバーに渡されます。



  • この値は、D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE値と同じ方法で使用されます。


D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE
システムで使用するために予約されています。 ドライバーでは、この値を使用しないでください。

Windows 8 以降でサポートされています。
D3DKMDT_GDISURFACE_TEXTURE_CROSSADAPTER
サーフェスに次のプロパティがあることを示します。



  • CPU には表示されず、ビデオ メモリ マネージャーによって、共有のクロスアダプター サーフェスとして作成されます。



  • そのピッチは、D3DKMDT_GDISURFACEDATA構造体の Pitch メンバーのディスプレイ ミニポート ドライバーによって返される必要があります。



  • ピッチと高さは、クロスアダプター リソースに必要なアラインメントを持っている必要があります。 D3DKMT_CROSS_ADAPTER_RESOURCE_PITCH_ALIGNMENT定数とD3DKMT_CROSS_ADAPTER_RESOURCE_HEIGHT_ALIGNMENT定数を使用して、ドライバーがクロスアダプター リソースの正しいピッチと高さを返していることを検証できます。 これらの定数は D3dukmdt.h で定義されています。



Windows 8.1 以降でサポートされています。
D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE_CROSSADAPTER
システムで使用するために予約されています。 ドライバーでは、この値を使用しないでください。

Windows 8.1 以降でサポートされています。

要件

要件
サポートされている最小のクライアント Windows 7
Header d3dkmdt.h

こちらもご覧ください

D3DDDIFORMAT

D3DKMDT_GDISURFACEDATA

DXGK_DRIVERCAPS

DXGK_PRESENTATIONCAPS

DXGK_RENDERKM_COMMAND