Método IDirect3DDevice9::P resent (d3d9.h)
Apresenta o conteúdo do próximo buffer na sequência de buffers traseiros pertencentes ao dispositivo.
Sintaxe
HRESULT Present(
[in] const RECT *pSourceRect,
[in] const RECT *pDestRect,
[in] HWND hDestWindowOverride,
[in] const RGNDATA *pDirtyRegion
);
Parâmetros
[in] pSourceRect
Tipo: const RECT*
Ponteiro para um valor que deve ser NULL , a menos que a cadeia de troca tenha sido criada com D3DSWAPEFFECT_COPY. pSourceRect é um ponteiro para uma estrutura RECT que contém o retângulo de origem. Se FOR NULL, toda a superfície de origem será apresentada. Se o retângulo exceder a superfície de origem, o retângulo será recortado na superfície de origem.
[in] pDestRect
Tipo: const RECT*
Ponteiro para um valor que deve ser NULL , a menos que a cadeia de troca tenha sido criada com D3DSWAPEFFECT_COPY. pDestRect é um ponteiro para uma estrutura RECT que contém o retângulo de destino, nas coordenadas do cliente da janela. Se FOR NULL, toda a área do cliente será preenchida. Se o retângulo exceder a área do cliente de destino, o retângulo será recortado na área do cliente de destino.
[in] hDestWindowOverride
Tipo: HWND
Ponteiro para uma janela de destino cuja área do cliente é tomada como o destino desta apresentação. Se esse valor for NULL, o runtime usará o membro hDeviceWindow de D3DPRESENT_PARAMETERS para a apresentação.
[in] pDirtyRegion
Tipo: const RGNDATA*
O valor deve ser NULL , a menos que a cadeia de troca tenha sido criada com D3DSWAPEFFECT_COPY. Para obter mais informações sobre cadeias de troca, consulte Inverter superfícies (Direct3D 9) e D3DSWAPEFFECT. Se esse valor não for NULL, a região contida será expressa em coordenadas de buffer de fundo. Os retângulos dentro da região são o conjunto mínimo de pixels que precisam ser atualizados. Esse método leva esses retângulos em conta ao otimizar a apresentação copiando apenas os pixels dentro da região ou algum conjunto de retângulos adequadamente expandido. Isso é um auxílio apenas para otimização e o aplicativo não deve depender exatamente da região que está sendo copiada. A implementação pode optar por copiar todo o retângulo de origem.
Valor retornado
Tipo: HRESULT
Os possíveis valores retornados incluem: D3D_OK ou D3DERR_DEVICEREMOVED (consulte D3DERR).
Comentários
Se necessário, uma operação de alongamento é aplicada para transferir os pixels dentro do retângulo de origem para o retângulo de destino na área do cliente da janela de destino.
O presente falhará, retornando D3DERR_INVALIDCALL, se chamado entre pares BeginScene e EndScene, a menos que o destino de renderização não seja o destino de renderização atual (como o buffer de fundo obtido com a criação de uma cadeia de troca adicional). Esse é um novo comportamento para o Direct3D 9.
Requisitos
Plataforma de Destino | Windows |
Cabeçalho | d3d9.h (inclua D3D9.h) |
Biblioteca | D3D9.lib |