ID3D11DeviceContext::ExecuteCommandList メソッド (d3d11.h)

コマンド リストからデバイスにコマンドをキューに入れます。

構文

void ExecuteCommandList(
  [in] ID3D11CommandList *pCommandList,
       BOOL              RestoreContextState
);

パラメーター

[in] pCommandList

種類: ID3D11CommandList*

コマンド リストをカプセル化する ID3D11CommandList インターフェイスへのポインター。

RestoreContextState

種類: BOOL

ターゲット コンテキストの状態が、 の前に保存され、コマンド リストの実行後に復元されるかどうかを示すブール型 (Boolean) のフラグ。 TRUE を使用して、ランタイムが状態を保存して復元する必要があることを示します。 FALSE を使用して、状態を保存または復元できないことを示します。これにより、ターゲット コンテキストは、コマンド リストの実行後に既定の状態に戻ります。 アプリケーションは通常 、TRUE が渡された場合にランタイムが復元する状態とほぼ同じ状態に復元しない限り、 FALSE を 使用する必要があります。 アプリケーションで FALSE を使用すると、不要で非効率的な状態遷移を回避できます。

戻り値

なし

解説

任意のスレッドで遅延コンテキストによって記録されたコマンド リストを再生するには、このメソッドを使用します。

記録されたコマンドをグラフィックス処理装置 (GPU) で実行するには、遅延コンテキストから即時コンテキストへのコマンド リストの ExecuteCommandList の呼び出しが必要です。 遅延コンテキストから別の遅延コンテキストへのコマンド リストの ExecuteCommandList の呼び出しを使用して、記録されたリストをマージできます。 ただし、GPU でマージされた遅延コマンド リストからコマンドを実行するには、即時コンテキストでコマンドを実行する必要があります。

このメソッドは、クエリに関連するいくつかのランタイム検証を実行します。 デバイス コンテキストで開始されたクエリは、コマンド リストを実行して間接的に操作することはできません (つまり、Begin または End は、コマンド リストを生成した遅延コンテキストによって同じクエリに対して呼び出されました)。 このような条件が発生した場合、ExecuteCommandList メソッドはコマンド リストを実行しません。 ただし、デバイス コンテキストの状態は、想定どおりに維持されます (アプリケーションがデバイス コンテキストの状態を保持することを示していない限り、ID3D11DeviceContext::ClearState が実行されます)。

Windows Phone 8: この API はサポートされています。

要件

要件
対象プラットフォーム Windows
ヘッダー d3d11.h
Library D3d11.lib

こちらもご覧ください

ID3D11DeviceContext