IDirect3DDevice9::CreateAdditionalSwapChain メソッド (d3d9.h)

複数のビューをレンダリングするための追加のスワップ チェーンを作成します。

構文

HRESULT CreateAdditionalSwapChain(
  [in, out]     D3DPRESENT_PARAMETERS *pPresentationParameters,
  [out, retval] IDirect3DSwapChain9   **pSwapChain
);

パラメーター

[in, out] pPresentationParameters

種類: D3DPRESENT_PARAMETERS*

新しいスワップ チェーンのプレゼンテーション パラメーターを含む、 D3DPRESENT_PARAMETERS 構造体へのポインター。 この値を NULL にすることはできません。

このメソッドを呼び出すと、D3DPRESENT_PARAMETERS構造体のメンバーの値が変更されます。

  • BackBufferCount == 0 の場合、CreateAdditionalSwapChain を呼び出すと、1 に増加します。
  • アプリケーションがウィンドウ モードで、BackBufferWidth または BackBufferHeight == 0 の場合は、クライアント領域の幅と hwnd の高さに設定されます。

[out, retval] pSwapChain

種類: IDirect3DSwapChain9**

追加のスワップ チェーンを表す IDirect3DSwapChain9 インターフェイスへのポインターのアドレス。

戻り値

種類: HRESULT

メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値は、D3DERR_NOTAVAILABLE、D3DERR_DEVICELOST、D3DERR_INVALIDCALL、D3DERR_OUTOFVIDEOMEMORY、E_OUTOFMEMORYのいずれかになります。

解説

Direct3D 9 にはデバイスのプロパティとして 1 つのスワップ チェーンがあるため、デバイスごとに少なくとも 1 つのスワップ チェーン (暗黙的なスワップ チェーン) が常に存在します。

特定のデバイスでサポートできる全画面表示スワップ チェーンは 1 つだけであることに注意してください。

D3DFMT_UNKNOWNは、IDirect3D9::CreateDevice、IDirect3DDevice9::Reset、CreateAdditionalSwapChain を呼び出すときに、ウィンドウ モードのバック バッファー形式に指定できます。 つまり、ウィンドウ モードで CreateDevice を呼び出す前に、アプリケーションで現在のデスクトップ形式に対してクエリを実行する必要はありません。 全画面表示モードの場合は、バック バッファー形式を指定する必要があります。

要件

   
対象プラットフォーム Windows
ヘッダー d3d9.h (D3D9.h を含む)
Library D3D9.lib

関連項目

IDirect3DDevice9

ウィンドウ モードで複数のビューを表示する (Direct3D 9)