次の方法で共有


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 ビットブレット (コピーのみ) 操作のソースまたはコピー先サーフェスとして使用されます。


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 構造体の ピッチ メンバーのディスプレイ ミニポート ドライバーによって返される必要があります。



  • ピッチと高さは、クロスアダプター リソースに必要なアラインメントを持っている必要があります。 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
ヘッダー d3dkmdt.h

関連項目

D3DDDIFORMAT

D3DKMDT_GDISURFACEDATA

DXGK_DRIVERCAPS

DXGK_PRESENTATIONCAPS

DXGK_RENDERKM_COMMAND