Método IDirect3DDevice9::CreateAdditionalSwapChain (d3d9.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 , que contém 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 dos membros da estrutura D3DPRESENT_PARAMETERS.

  • Se BackBufferCount == 0, chamar CreateAdditionalSwapChain o aumentará para 1.
  • Se o aplicativo estiver no modo de janela e se o BackBufferWidth ou o BackBufferHeight == 0, eles serão definidos 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.

Valor retornado

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 a apenas uma cadeia de troca de tela inteira.

D3DFMT_UNKNOWN pode ser especificado para o formato de buffer de fundo 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 de fundo deve ser especificado.

Requisitos

   
Plataforma de Destino Windows
Cabeçalho d3d9.h (inclua D3D9.h)
Biblioteca D3D9.lib

Confira também

IDirect3DDevice9

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