Метод 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 |
Header | d3d9.h (включая D3D9.h) |
Библиотека | D3D9.lib |