Método ID2D1Factory::CreateDxgiSurfaceRenderTarget(IDXGISurface*,constD2D1_RENDER_TARGET_PROPERTIES&,ID2D1RenderTarget**) (d2d1.h)
Cria um destino de renderização que se desenha em uma superfície DXGI (Infraestrutura Gráfica) do DirectX.
Sintaxe
HRESULT CreateDxgiSurfaceRenderTarget(
[in] IDXGISurface *dxgiSurface,
[ref] const D2D1_RENDER_TARGET_PROPERTIES & renderTargetProperties,
[out] ID2D1RenderTarget **renderTarget
);
Parâmetros
[in] dxgiSurface
Tipo: IDXGISurface*
O IDXGISurface para o qual o destino de renderização será desenhado.
[ref] renderTargetProperties
Tipo: const D2D1_RENDER_TARGET_PROPERTIES &
O modo de renderização, o formato de pixel, as opções de comunicação remota, as informações de DPI e o suporte mínimo do DirectX necessário para a renderização de hardware. Para obter informações sobre formatos de pixel com suporte, consulte Formatos de pixel com suporte e modos alfa.
[out] renderTarget
Tipo: ID2D1RenderTarget**
Quando esse método retorna, contém o endereço do ponteiro para o objeto ID2D1RenderTarget criado por esse método.
Retornar valor
Tipo: HRESULT
Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT .
Comentários
Para gravar em uma superfície Direct3D, você obtém um IDXGISurface e passa-o para o método CreateDxgiSurfaceRenderTarget para criar um destino de renderização de superfície DXGI; Em seguida, você pode usar o destino de renderização de superfície DXGI para desenhar conteúdo 2D para a superfície DXGI.
Um destino de renderização de superfície DXGI é um tipo de ID2D1RenderTarget. Como outros Direct2D renderizar destinos, você pode usá-lo para criar recursos e emitir comandos de desenho.
O destino de renderização da superfície DXGI e a superfície DXGI devem usar o mesmo formato DXGI. Se você especificar o formato DXGI_FORMAT_UNKOWN ao criar o destino de renderização, ele usará automaticamente o formato da superfície.
O destino de renderização de superfície DXGI não executa a sincronização de superfície DXGI.
Para obter mais informações sobre como criar e usar destinos de renderização de superfície DXGI, consulte a Visão geral de interoperabilidade do Direct2D e direct3D.
Para trabalhar com Direct2D, o dispositivo Direct3D que fornece o IDXGISurface deve ser criado com o sinalizador D3D10_CREATE_DEVICE_BGRA_SUPPORT.
Quando você cria um destino de renderização e a aceleração de hardware está disponível, você aloca recursos na GPU do computador. Ao criar um destino de renderização uma vez e mantê-lo o maior tempo possível, você obtém benefícios de desempenho. Seu aplicativo deve criar destinos de renderização uma vez e mantê-los durante a vida útil do aplicativo ou até que o método EndDraw do destino de renderização retorne o erro D2DERR_RECREATE_TARGET . Ao receber esse erro, você precisa recriar o destino de renderização (e todos os recursos que ele criou).
Exemplos
Consulte o exemplo de código em ID2D1Factory::CreateDxgiSurfaceRenderTarget.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7, Windows Vista com SP2 e Atualização de Plataforma para Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2008 R2, Windows Server 2008 com SP2 e Atualização de Plataforma para Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | d2d1.h |
Biblioteca | D2d1.lib |
DLL | D2d1.dll |
Confira também
CreateDxgiSurfaceRenderTarget(IDXGISurface,const D2D1_RENDER_TARGET_PROPERTIES,ID2D1RenderTarget)