次の方法で共有


IDirect3DSwapChain9::GetBackBuffer

デバイスのスワップ チェーンからバック バッファーを取得します。

HRESULT 
GetBackBuffer(
  UINT BackBuffer,
  D3DBACKBUFFER_TYPE Type,
  IDirect3DSurface9 ** ppBackBuffer
);

パラメータ

  • BackBuffer
    返されるバック バッファー オブジェクトのインデックスです。バック バッファーには、0 から (バック バッファーの総数 - 1) までの番号が付いています。値 0 を使用すると、フロント バッファーではなく、先頭のバック バッファーが返されます。このメソッドを使用してフロント バッファーにアクセスすることはできません。フロント バッファーのコピーを取得するには、IDirect3DSwapChain9::GetFrontBufferData を使用します。
  • Type
    Direct3D 9 では、ステレオ ビューはサポートされていません。このため、このパラメーターに有効な値は D3DBACKBUFFER_TYPE_MONO のみです。
  • ppBackBuffer
    返されるバック バッファー サーフェスを表す IDirect3DSurface9 インターフェイスへのポインターのアドレスです。

戻り値

メソッドが成功した場合は、D3D_OK を返します。BackBuffer がバック バッファーの総数以上の値であると、この関数は失敗し、D3DERR_INVALIDCALL を返します。

解説 

このメソッドを呼び出すと、IDirect3DSurface9 インターフェイスの内部リファレンス カウントが増加します。この IDirect3DSurface9 インターフェイスの使用終了後に IUnknown::Release を呼び出さないと、メモリー リークが発生します。このメソッドで取得したサーフェスはすべて、その所属先のスワップ チェーンを解放する前に解放する必要があります。

要件

ヘッダー: D3D9.h 宣言

関連項目

IDirect3DSwapChain9::GetFrontBufferData