Метод IDirect3DSwapChain9::GetBackBuffer (d3d9helper.h)
Извлекает задний буфер из цепочки буферов устройства.
Синтаксис
HRESULT GetBackBuffer(
[in] UINT iBackBuffer,
[in] D3DBACKBUFFER_TYPE Type,
[out, retval] IDirect3DSurface9 **ppBackBuffer
);
Параметры
[in] iBackBuffer
Тип: UINT
Индекс возвращаемого объекта обратного буфера. Задние буферы нумеруются от 0 до общего числа задних буферов — 1. Значение 0 возвращает первый задний буфер, а не передний буфер. Передний буфер недоступен с помощью этого метода. Используйте IDirect3DSwapChain9::GetFrontBufferData , чтобы получить копию переднего буфера.
[in] Type
Тип: D3DBACKBUFFER_TYPE
Стерео представление не поддерживается в Direct3D 9, поэтому единственным допустимым значением этого параметра является D3DBACKBUFFER_TYPE_MONO.
[out, retval] ppBackBuffer
Тип: IDirect3DSurface9**
Адрес указателя на интерфейс IDirect3DSurface9 , представляющий возвращенную обратную буферную поверхность.
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если значение BackBuffer превышает или равно общему количеству буферов назад, функция завершается сбоем и возвращает D3DERR_INVALIDCALL.
Комментарии
Вызов этого метода увеличит количество внутренних ссылок в интерфейсе IDirect3DSurface9 . Сбой вызова IUnknown::Release после завершения использования этого интерфейса IDirect3DSurface9 приводит к утечке памяти. Перед освобождением цепочки буферов необходимо освободить все поверхности, полученные с помощью этого метода.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d9helper.h (включая D3D9.h) |
Библиотека | D3D9.lib |