DXGI_PRESENT

DXGI_PRESENT定数は、出力にフレームを表示するためのオプションを指定します。

定数/値 説明
0
各バッファー (現在のバッファーから始まる) から出力までのフレームを提示します。
DXGI_PRESENT_DO_NOT_SEQUENCE
0x00000002UL
現在のバッファーから出力にフレームを表示します。 このフラグを使用して、通常の方法でチェーン内のバッファーをシーケンス処理するのではなく、垂直方向の空白の同期を使用できるようにします。
メモ: 呼び出し元のアプリケーションが最初の現在の操作でDXGI_PRESENT_DO_NOT_SEQUENCE定数を設定する場合 (つまり、現在のバッファーがない場合)、ランタイムはその現在の操作を無視し、ドライバーを呼び出しません。
DXGI_PRESENT_TEST
0x00000001UL
フレームを出力に表示しないでください。 スワップ チェーンの状態がテストされ、適切なエラーが返されます。 DXGI_PRESENT_TESTはアイドル状態からの切り替え時にのみ使用することを目的としています。スワップ チェーンが全画面表示モードを終了できなくなる可能性があるため、アイドル状態に切り替えるタイミングを判断するために使用しないでください。
DXGI_PRESENT_RESTART
0x00000004UL
キューに登録された未処理のプレゼンテーションをランタイムが破棄することを指定します。
DXGI_PRESENT_DO_NOT_WAIT
0x00000008UL
呼び出し元のスレッドがブロックされている場合に、ランタイムがDXGI_ERROR_WAS_STILL_DRAWINGエラー コードを使用してプレゼンテーションに失敗することを指定します (つまり、IDXGISwapChain1::P resent1 の呼び出しに失敗します)。ランタイムは、依存関係が解決されるまでスリープ状態ではなく、DXGI_ERROR_WAS_STILL_DRAWINGを返します。
Direct3D 11: この列挙値は、Windows 8 以降でサポートされています。
DXGI_PRESENT_RESTRICT_TO_OUTPUT
0x00000010UL
プレゼンテーションの内容が特定の出力にのみ表示されることを示します。 コンテンツは他の出力には表示されません。 たとえば、ユーザーが別の出力にビデオ コンテンツを再配置しようとすると、ビデオ コンテンツは表示されません。
Direct3D 11: この列挙値は、Windows 8 以降でサポートされています。
メモ: このフラグは、スワップ効果 DXGI_SWAP_EFFECT_FLIP_SEQUENTIALまたはDXGI_SWAP_EFFECT_FLIP_DISCARD でのみ使用する必要があります。 このフラグを のスワップ効果と共に使用することは非推奨になり、今後のバージョンの Windows では機能しない可能性があります。
DXGI_PRESENT_STEREO_PREFER_RIGHT
0x00000020UL
存在するステレオをモノラルに減らす必要がある場合は、左目表示ではなく右目表示が使用されることを示します。
Direct3D 11: この列挙値は、Windows 8 以降でサポートされています。
DXGI_PRESENT_STEREO_TEMPORARY_MONO
0x00000040UL
プレゼンテーションで左バッファーを mono バッファーとして使用する必要があることを示します。 アプリケーションは IDXGISwapChain1::IsTemporaryMonoSupported メソッドを呼び出して、スワップ チェーンが "一時 mono" をサポートしているかどうかを判断します。
Direct3D 11: この列挙値は、Windows 8 以降でサポートされています。
DXGI_PRESENT_USE_DURATION
0x00000100UL
このフラグは、現在カスタムの現在の期間 (カスタム更新レート) を使用しているメディア アプリによって設定する必要があります。 「IDXGISwapChainMedia」を参照してください。
メモ:この値は、Windows 8.1 以降でサポートされています。
DXGI_PRESENT_ALLOW_TEARING
0x00000200UL
ティアリングを許可することは、可変リフレッシュレートディスプレイの要件です。
Present 中にDXGI_PRESENT_ALLOW_TEARINGを使用する条件は次のとおりです。
  • スワップ チェーンは 、DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING フラグを使用して作成する必要があります。
  • Present (または Present1) に渡される同期間隔は 0 である必要があります。
  • DXGI_PRESENT_ALLOW_TEARING フラグは、現在全画面表示排他モードのアプリケーションでは使用できません ( SetFullscreenState(TRUE)を呼び出して設定)。 ウィンドウ モードでのみ使用できます。 全画面表示の Win32 アプリでこのフラグを使用するには、アプリケーションを全画面表示の境界線のないウィンドウに表示し、 IDXGIFactory::MakeWindowAssociation を使用して Alt + Enter の全画面表示の自動切り替えを無効にする必要があります。 を呼び出 Windows::UI::ViewManagement::ApplicationView::TryEnterFullscreen() して全画面表示モードに入る UWP アプリは、全画面表示の境界線のないウィンドウであり、 フラグを使用できます。
このフラグを指定して Present (または Present1) を呼び出し、上記の条件を満たしていないと、呼び出し元のアプリケーションにDXGI_ERROR_INVALID_CALL エラーが返されます。

注釈

プレゼンテーション オプションは、 IDXGISwapChain::P resent または IDXGISwapChain1::P resent1 呼び出し中に指定されます。 バッファーは、スワップ チェーンの説明で指定されます ( DXGI_SWAP_CHAIN_DESC または DXGI_SWAP_CHAIN_DESC1を参照)。

DXGI_PRESENT_RESTARTは、フリップモデルスワップチェーンと全画面表示でのみ有効です。 アプリケーションでは、DXGI_PRESENT_RESTARTを使用して再生中の不具合から回復したり、以前にキューに入れたプレゼンテーションを破棄したりできます。 キューに入れたプレゼンテーションがウィンドウ化されたシナリオである場合は、以前にキューに入れたプレゼンテーションを破棄すると便利です。 特に、以前にキューに入れたプレゼンテーションでは、ウィンドウが古いサイズであると想定されている可能性があります (つまり、送信後にサイズ変更操作が発生しました)。

DXGI_PRESENT_RESTRICT_TO_OUTPUTは、特定の出力を指定したスワップ チェーンに対してのみ有効であり、それらのスワップ チェーンの作成時にコンテンツを 制限します (IDXGIFactory2::CreateSwapChainForHwnd)。 制限する出力がない場合、フラグは無効です。

DXGI_PRESENT_STEREO_PREFER_RIGHTは、存在するステレオをモノに減らす必要がある場合は、左目 (既定) の目ではなく右目を使用する必要があることを示します。 このフラグは、一方の辺の品質が高い場合に使用できます (たとえば、ステレオ ペアが標準イメージから合成される場合)。

DXGI_PRESENT_STEREO_TEMPORARY_MONOは、現在のが mono バッファーとして左バッファーを使用する必要があることを示します。 このフラグを使用すると、アプリケーションにステレオ コンテンツが一時的に存在しない場合に適切なバッファーが更新されないようにすることができます。 このフラグは、オペレーティング システムによる大幅な最適化を可能にし、状況によっては表示モードの変更成果物を回避できるため、可能な限り使用する必要があります。

ステレオをもう一度使用すると予想されるほとんどのアプリケーションでは、mono スワップ チェーンに切り替える場合は、DXGI_PRESENT_STEREO_TEMPORARY_MONO フラグを使用する必要があります。 実行時間が非常に長いアプリケーションや、使用されていないメモリの欠点に対してステレオをほとんど表示しないアプリケーションでは、このフラグの使用のバランスを取る必要があります。

注意

モノ スワップ チェーンに切り替える全画面表示アプリケーションでは、一般的に成果物が表示されるモードの変更が発生します (例: "フラッシュ")。 ただし、全画面表示のスワップ チェーンでは、一時的な mono はサポートされない場合があります。

 

DXGI_PRESENT_STEREO_PREFER_RIGHTフラグとDXGI_PRESENT_STEREO_TEMPORARY_MONO フラグは、ステレオ スワップ チェーンにのみ適用されます。 mono スワップ チェーンを提示するときに使用すると、無効な操作が発生します。

一時的なモノをサポートしていないステレオ スワップ チェーンを提示するときにDXGI_PRESENT_STEREO_TEMPORARY_MONO フラグを使用すると、エラーが発生し、スワップ チェーンが表示されず、プレゼンテーション がDXGI_ERROR_INVALID_CALL返されます。

要件

要件
ヘッダー
DXGI.h

関連項目

DXGI 定数