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

См. также раздел

IDirect3DDevice9