IDirect3DDevice9::GetFrontBufferData
デバイスのフロント バッファーのコピーを生成し、そのコピーをアプリケーションで指定されたシステム メモリー バッファーに配置します。
HRESULT
GetFrontBufferData(
UINT iSwapChain,
IDirect3DSurface9 * pDestSurface
);
パラメータ
- iSwapChain
スワップ チェーンを指定する符号なし整数です。 - pDestSurface
フロント バッファーのコンテンツのコピーを受け取る IDirect3DSurface9 インターフェイスへのポインターです。データは、デバイスの出力の一番上の行から一番下の行まで、スペースを挟まず連続した行の形式で返されます。
ウィンドウ表示モードの場合、デスティネーション サーフェスのサイズはデスクトップのサイズである必要があります。全画面モードの場合、デスティネーション サーフェスのサイズは画面サイズである必要があります。
戻り値
メソッドが成功した場合は、D3D_OK を返します。失敗した場合は、次の戻り値のいずれかを返します。D3DERR_DRIVERINTERNALERROR、D3DERR_DEVICELOST、D3DERR_INVALIDCALL
解説
pDestSurface でポイントされるバッファーには、標準のピクセルあたり 32 ビットのフォーマット D3DFMT_A8R8G8B8 に変換されたフロント バッファーの表示が格納されます。
このメソッドは、アンチエイリアシングが適用されたスクリーン ショットをキャプチャーする唯一の方法です。
設計上、この関数はきわめて低速なため、パフォーマンスを重視するパスで使用してはいけません。
詳細については、「Lost Devices and Retrieved Data」を参照してください。
要件
ヘッダー: D3D9.h 宣言