IDirect3DDevice9::GetFrontBufferData 方法 (d3d9.h)
產生裝置前端緩衝區的複本,並將該復本放在應用程式所提供的系統記憶體緩衝區中。
語法
HRESULT GetFrontBufferData(
[in] UINT iSwapChain,
[in] IDirect3DSurface9 *pDestSurface
);
參數
[in] iSwapChain
類型: UINT
指定交換鏈結的不帶正負號整數。
[in] pDestSurface
類型: IDirect3DSurface9*
IDirect3DSurface9 介面的指標,該介面將接收前端緩衝區的內容複本。 數據會以連續的數據列傳回,沒有交錯空間,從裝置輸出的垂直最高數據列開始到最低。
如果是視窗模式,目的地介面的大小應該是桌面的大小。 若為全螢幕模式,目的地介面的大小應該是螢幕大小。
傳回值
類型: HRESULT
如果方法成功,傳回值會D3D_OK。 如果方法失敗,傳回值可以是下列其中一項:D3DERR_DRIVERINTERNALERROR、D3DERR_DEVICELOST、D3DERR_INVALIDCALL
備註
pDestSurface 所指向的緩衝區會填入前端緩衝區的表示法,並轉換成每個圖元格式的標準 32 位D3DFMT_A8R8G8B8。
這個方法是擷取反鋸齒螢幕快照的唯一方法。
此函式的設計速度非常慢,不應用於任何效能關鍵性路徑。
如需詳細資訊,請參閱 遺失裝置和擷取的數據。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | d3d9.h (包含 D3D9.h) |
程式庫 | D3D9.lib |