Método IDirect3DDevice9::CreateAdditionalSwapChain (d3d9helper.h)

Cria uma cadeia de troca adicional para renderizar várias exibições.

Sintaxe

HRESULT CreateAdditionalSwapChain(
  [in, out]     D3DPRESENT_PARAMETERS *pPresentationParameters,
  [out, retval] IDirect3DSwapChain9   **pSwapChain
);

Parâmetros

[in, out] pPresentationParameters

Tipo: D3DPRESENT_PARAMETERS*

Ponteiro para uma estrutura D3DPRESENT_PARAMETERS , contendo os parâmetros de apresentação para a nova cadeia de troca. Esse valor não pode ser NULL.

Chamar esse método altera o valor de membros da estrutura D3DPRESENT_PARAMETERS.

  • Se BackBufferCount == 0, chamar CreateAdditionalSwapChain aumentará para 1.
  • Se o aplicativo estiver no modo de janela e se o BackBufferWidth ou o BackBufferHeight == 0, ele será definido como a largura e a altura da área do cliente do hwnd.

[out, retval] pSwapChain

Tipo: IDirect3DSwapChain9**

Endereço de um ponteiro para uma interface IDirect3DSwapChain9 , representando a cadeia de troca adicional.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, o valor retornado será D3D_OK. Se o método falhar, o valor retornado poderá ser um dos seguintes: D3DERR_NOTAVAILABLE, D3DERR_DEVICELOST, D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY.

Comentários

Há sempre pelo menos uma cadeia de troca (a cadeia de troca implícita) para cada dispositivo porque o Direct3D 9 tem uma cadeia de troca como propriedade do dispositivo.

Observe que qualquer dispositivo específico pode dar suporte apenas a uma cadeia de troca de tela inteira.

D3DFMT_UNKNOWN pode ser especificado para o formato de buffer de back do modo em janela ao chamar IDirect3D9::CreateDevice, IDirect3DDevice9::Reset e CreateAdditionalSwapChain. Isso significa que o aplicativo não precisa consultar o formato da área de trabalho atual antes de chamar CreateDevice para o modo em janela. Para o modo de tela inteira, o formato de buffer traseiro deve ser especificado.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d9helper.h (inclua D3D9.h)
Biblioteca D3D9.lib

Confira também

IDirect3DDevice9

Apresentando várias exibições no modo de janela (Direct3D 9)