次の方法で共有


D3DKMT_PRESENTFLAGS構造体 (d3dkmthk.h)

D3DKMT_PRESENTFLAGS構造体は、現在の操作を実行する方法を識別します。

構文

typedef struct _D3DKMT_PRESENTFLAGS {
  union {
    struct {
      UINT Blt : 1;
      UINT ColorFill : 1;
      UINT Flip : 1;
      UINT FlipDoNotFlip : 1;
      UINT FlipDoNotWait : 1;
      UINT FlipRestart : 1;
      UINT DstRectValid : 1;
      UINT SrcRectValid : 1;
      UINT RestrictVidPnSource : 1;
      UINT SrcColorKey : 1;
      UINT DstColorKey : 1;
      UINT LinearToSrgb : 1;
      UINT PresentCountValid : 1;
      UINT Rotate : 1;
      UINT PresentToBitmap : 1;
      UINT RedirectedFlip : 1;
      UINT RedirectedBlt : 1;
      UINT FlipStereo : 1;
      UINT FlipStereoTemporaryMono : 1;
      UINT FlipStereoPreferRight : 1;
      UINT BltStereoUseRight : 1;
      UINT PresentHistoryTokenOnly : 1;
      UINT PresentRegionsValid : 1;
      UINT PresentDDA : 1;
      UINT ProtectedContentBlankedOut : 1;
      UINT RemoteSession : 1;
      UINT CrossAdapter : 1;
      UINT DurationValid : 1;
      UINT PresentIndirect : 1;
      UINT PresentHMD : 1;
#if ...
      UINT Reserved : 2;
#elif
      UINT Reserved : 6;
#else
      UINT Reserved : 15;
#endif
    };
         UINT Value;
  };
} D3DKMT_PRESENTFLAGS;

メンバーズ

Blt

プライマリ サーフェスへのデータのビット ブロック転送 (bitblt) を行うかどうかを指定する UINT 値。 このビット フィールド フラグは、DstRectValid および SrcRectValid ビット フィールド フラグと共に使用できます。

このメンバーの設定は、32 ビット Value メンバー (0x00000001) の最初のビットを設定することと同じです。

ColorFill

D3DKMT_PRESENT 構造体の Color メンバーの値を使用して、プライマリ サーフェスに対してカラーフィル ビットブレットを実行するかどうかを指定する UINT 値。 このビット フィールド フラグは、DstRectValid ビット フィールド フラグと共に使用できます。

このメンバーの設定は、32 ビット Value メンバー (0x00000002) の 2 番目のビットを設定することと同じです。

Flip

新しいサーフェスに反転するかどうかを指定する UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00000004) の 3 番目のビットを設定することと同じです。

FlipDoNotFlip

キューに登録された待機をレンダリング ストリームに挿入するかどうかを指定する UINT 値。 このメンバーを設定すると、現在スキャンアウトされているのと同じサーフェスに反転することを示します。

このメンバーの設定は、32 ビット Value メンバー (0x00000008) の 4 番目のビットを設定することと同じです。

FlipDoNotWait

OpenGL インストール可能クライアント ドライバー (ICD) で、現在の操作で、キューに入っているフリップ サーフェスの数が特定の制限を下回るまで待機してから操作を開始する必要があるかどうかを指定する UINT 値。 このメンバーを設定すると、ICD は待機する必要がないことを示します。 キューに配置されたフリップ サーフェスの数の既定の制限は 3 です。

このメンバーの設定は、32 ビット Value メンバー (0x00000010) の 5 番目のビットを設定することと同じです。

FlipRestart

新しいサーフェスへのフリップを再開するかどうかを指定する UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00000020) の 6 番目のビットを設定することと同じです。

DstRectValid

ビットが宛先の四角形領域を使用するかどうかを指定する UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00000040) の 7 ビットを設定することと同じです。

SrcRectValid

bitblt がソース矩形領域を使用するかどうかを指定する UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00000080) の 8 ビットを設定することと同じです。

RestrictVidPnSource

ビットblt を制限するかどうかを指定する UINT 値。 hWindow メンバーが NULL 場合、D3DKMT_PRESENT 構造体の VidPnSourceId メンバーは、全画面表示ビットblt の出力先を示します。hWindow が null以外の場合、VidPnSourceId 、ウィンドウ化されたビットブレットを制限する出力を示します。

このメンバーの設定は、32 ビット Value メンバー (0x00000100) の 9 番目のビットを設定することと同じです。

SrcColorKey

D3DKMT_PRESENT 構造体の Color メンバーの値を使用して、ソース のカラー キー設定を実行するかどうかを指定する UINT 値。 つまり、カラー キーに一致するソース サーフェス内のピクセルはコピー先のサーフェスにコピーしないでください。また、カラー キーと一致しないすべてのソース ピクセルをコピーする必要があります。

このメンバーの設定は、32 ビット Value メンバー (0x00000200) の 10 ビットを設定することと同じです。

DstColorKey

D3DKMT_PRESENTの Color メンバーの値を使用して、コピー先のカラー キー設定を実行するかどうかを指定する UINT 値。 つまり、カラー キーに一致するターゲット サーフェス内のピクセルは、ソース サーフェスの対応するピクセルに置き換える必要があり、カラー キーと一致しないすべてのターゲット ピクセルは置き換えないでください。

このメンバーの設定は、32 ビット Value メンバー (0x00000400) の 11 ビットを設定することと同じです。

LinearToSrgb

コピー操作中に、線形形式のソースを sRGB 形式に変換するかどうかを指定する UINT 値。 sRGB 形式がガンマ修正されました。 sRGB 形式の詳細については、sRGB Web サイトを参照してください。

このメンバーの設定は、32 ビット Value メンバー (0x00000800) の 12 ビットを設定することと同じです。

PresentCountValid

D3DKMT_PRESENT 構造体の PresentCount メンバーに設定された値が有効かどうかを示す UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00001000) の 13 ビットを設定することと同じです。

[in] Rotate

プレゼンテーション ビット ブロック転送 (bitblt) 中に、プレゼンテーション データを画面の現在の向きに合わせて回転させるかどうかを指定する UINT 値。 画面の現在の向きは、ビデオの現在のパスの D3DKMDT_VIDPN_PRESENT_PATH 構造の ContentTransformation メンバーで設定される、D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION 構造体の Rotation メンバーで設定されます。

ディスプレイ ミニポート ドライバーは、回転 ビット フィールド フラグが設定されている場合にのみ、データを回転する必要があります。 プレゼンテーション データから画面の現在の向きが回転し、回転 が設定されていないとドライバーが判断した場合でも、ドライバーはデータを回転させるべきではありません。

このメンバーの設定は、32 ビット Value メンバー (0x00002000) の 14 ビットを設定することと同じです。

PresentToBitmap

ビットマップに表示するかどうかを指定する UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00004000) の 15 ビットを設定することと同じです。

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

RedirectedFlip

フリップを新しいサーフェスにリダイレクトするかどうかを指定する UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00008000) の 16 ビットを設定することと同じです。

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

RedirectedBlt

ビットレットを新しいサーフェスにリダイレクトするかどうかを指定する UINT 値。

このメンバーの設定は、32 ビット Value メンバー (0x00010000) の 17 ビットを設定することと同じです。

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

FlipStereo

ドライバーがステレオ割り当ての左と右の両方の画像を反転するかどうかを指定します。

DXGK_SETVIDPNSOURCEADDRESS_FLAGS 構造体の FlipOnNextVSync メンバーが設定されている場合、ドライバーは次の VSync で左のイメージへのフリップを完了し、次の VSync で右の画像へのフリップを完了する必要があります。

FlipImmediateDXGK_SETVIDPNSOURCEADDRESS_FLAGS 構造体のメンバーが設定されている場合、ドライバーはすぐに新しい割り当てからスキャンアウトを開始する必要があります。 たとえば、ドライバーが適切なイメージをスキャンしていた場合は、新しい割り当ての右側のイメージ内の同じ相対オフセットから新しいスキャンを開始する必要があります。

FlipStereoFlipStereoTemporaryMono メンバーを同時に設定することはできません。

その他の要件については、「解説」セクションを参照してください。

このメンバーの設定は、32 ビット Value メンバー (0x00020000) の 18 ビットを設定することと同じです。

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

FlipStereoTemporaryMono

ドライバーがステレオ フレームの左右の部分に対してステレオ割り当ての左イメージを使用するかどうかを指定します。 ドライバーは、FlipStereoと同じ現在の操作を実行します。ただし、ステレオ フレームの両方の画像を生成するには、左側の画像からのみスキャンアウトする必要があります。

このメンバーは、ドライバーが現在の表示モードでこのオプションのサポートを報告する場合にのみ、D3DKMDT_VIDPN_SOURCE_MODE 構造体の Type メンバーをD3DKMDT_RMT_GRAPHICS_STEREO_ADVANCED_SCANに設定する必要があります。

FlipStereoFlipStereoTemporaryMono メンバーを同時に設定することはできません。

FlipStereoTemporaryMonoFlipStereoPreferRight メンバーを同時に設定することはできません。

その他の要件については、「解説」セクションを参照してください。

このメンバーの設定は、32 ビット Value メンバー (0x00040000) の 19 ビットを設定することと同じです。

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

FlipStereoPreferRight

ドライバーがモノラル モニターにステレオプライマリ割り当てを複製するときに、適切なイメージを使用するように指定します。

FlipStereoTemporaryMonoFlipStereoPreferRight メンバーを同時に設定することはできません。

その他の要件については、「解説」セクションを参照してください。

このメンバーの設定は、32 ビット Value メンバー (0x00080000) の 20 ビットを設定することと同じです。

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

BltStereoUseRight

ドライバーがステレオ割り当てからモノラル割り当てに提示する場合に、適切なイメージを使用するように指定します。 設定されていない場合、ドライバーは左のイメージを使用する必要があります。

このメンバーの設定は、32 ビット Value メンバー (0x00100000) の 21 ビットを設定することと同じです。

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

PresentHistoryTokenOnly

ドライバーが現在の履歴トークンのみを送信することを指定します。

表示履歴トークン は、レンダリング アプリが送信するデータ パケットで、レンダリングが完了し、スワップ チェーン バック バッファーを表示する準備ができていることをデスクトップ ウィンドウ マネージャー (DWM) に通知します。

このメンバーの設定は、32 ビット Value メンバー (0x00200000) の 22 ビットを設定することと同じです。

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

PresentRegionsValid

D3DKMT_PRESENTを指定します。pPresentRegions メンバーは有効なポインターです (NULL ではありません)。

このメンバーの設定は、32 ビット Value メンバー (0x00400000) の 23 ビットを設定することと同じです。

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

PresentDDA

このメンバーは予約されており、0 に設定する必要があります。

このメンバーの設定は、32 ビット Value メンバー (0x00800000) の 24 ビットを設定することと同じです。

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

ProtectedContentBlankedOut

このメンバーは予約されており、0 に設定する必要があります。

このメンバーの設定は、32 ビット Value メンバー (0x01000000) の 25 ビットを設定することと同じです。

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

RemoteSession

現在の操作をリモート セッションに転送することを指定します。

このメンバーの設定は、32 ビット Value メンバー (0x02000000) の 26 ビットを設定することと同じです。

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

CrossAdapter

クロス アダプター。

DurationValid

期間が有効かどうかを示します。

PresentIndirect

間接を提示します。

PresentHMD

Reserved

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

このメンバーは予約されており、0 に設定する必要があります。 このメンバーを 0 に設定することは、32 ビット Value メンバーの残りの 9 ビット (0xFF800000) をゼロに設定することと同じです。

Value

現在の操作の実行方法を識別する 32 ビット値。

備考

FlipStereo、flipStereoTemporaryMono 、または flipStereoPreferRight メンバーが設定されている場合は、次の条件が適用されます。

  • DXGKARG_SETVIDPNSOURCEADDRESS 構造体の hAllocation メンバーは、D3DKMT_DISPLAYMODE 構造体の Flags メンバーに設定された Stereo メンバーを使用して作成された割り当てを指す必要があります。
  • DXGKARG_SETVIDPNSOURCEADDRESS の primarySegment および PrimaryAddress メンバーは、割り当ての開始物理アドレスを指す必要があります。
  • ドライバーは、FlipImmediateFlipOnNextVSyncDXGK_SETVIDPNSOURCEADDRESS_FLAGS 構造体のメンバーの設定を尊重する必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista 以降で使用できます。
ヘッダー d3dkmthk.h (D3dkmthk.h を含む)

関連項目

D3DKMDT_VIDPN_PRESENT_PATH

D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION

D3DKMT_DISPLAYMODE

D3DKMT_PRESENT

DXGKARG_SETVIDPNSOURCEADDRESS

DXGK_SETVIDPNSOURCEADDRESS_FLAGS