Retrieves a back buffer from the swap chain of the device.
HRESULT GetBackBuffer( [in] UINT BackBuffer, [in] D3DBACKBUFFER_TYPE Type, [out, retval] IDirect3DSurface9 **ppBackBuffer );
- BackBuffer [in]
Index of the back buffer object to return. Back buffers are numbered from 0 to the total number of back buffers - 1. A value of 0 returns the first back buffer, not the front buffer. The front buffer is not accessible through this method. Use IDirect3DSwapChain9::GetFrontBufferData to retrieve a copy of the front buffer.
- Type [in]
Stereo view is not supported in Direct3D 9, so the only valid value for this parameter is D3DBACKBUFFER_TYPE_MONO.
- ppBackBuffer [out, retval]
Address of a pointer to an IDirect3DSurface9 interface, representing the returned back buffer surface.
If the method succeeds, the return value is D3D_OK. If BackBuffer exceeds or equals the total number of back buffers, then the function fails and returns D3DERR_INVALIDCALL.
Calling this method will increase the internal reference count on the IDirect3DSurface9 interface. Failure to call IUnknown::Release when finished using this IDirect3DSurface9 interface results in a memory leak. You must release any surfaces obtained through this method before releasing the swap chain it belongs to.