次の方法で共有


IDirect3DDevice9::CreateAdditionalSwapChain

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

HRESULT 
CreateAdditionalSwapChain(
  D3DPRESENT_PARAMETERS* pPresentationParameters,
  IDirect3DSwapChain9** ppSwapChain
);

パラメータ

  • pPresentationParameters
    新しいスワップ チェーンのプレゼンテーション パラメーターを含む D3DPRESENT_PARAMETERS 構造体へのポインターです。この値には NULL を指定できません。
    このメソッドを呼び出すと、D3DPRESENT_PARAMETERS 構造体のメンバーの値が変わります。

    • BackBufferCount == 0 の場合、CreateAdditionalSwapChain を呼び出すと、0 が 1 に増えます。
    • 表示モードの場合、および BackBufferWidth または BackBufferHeight == 0 の場合、これらはクライアント領域の幅および hwnd の高さに設定されます。
  • ppSwapChain
    追加のスワップ チェーンを表す IDirect3DSwapChain9 インターフェイスへのポインターのアドレスです。

戻り値

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

解説 

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

所定のデバイスでサポートできるフルスクリーン スワップ チェーンは 1 つだけです。

D3DFMT_UNKNOWN は、IDirect3D9::CreateDeviceIDirect3DDevice9::Reset、および CreateAdditionalSwapChain を呼び出すときにウィンドウ表示モードのバック バッファー フォーマットに対して指定できます。つまり、ウィンドウ表示モードの CreateDevice を呼び出す前に、現在のデスクトップ フォーマットをクエリする必要はありません。フルスクリーン モードの場合、バック バッファー フォーマットを指定する必要があります。

要件

ヘッダー: D3D9.h 宣言

関連項目

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