Share via


ID2D1Factory::CreateDxgiSurfaceRenderTarget(IDXGISurface*,constD2D1_RENDER_TARGET_PROPERTIES&,ID2D1RenderTarget**)-Methode (d2d1.h)

Erstellt ein Renderziel, das auf eine DxGI-Oberfläche (DirectX Graphics Infrastructure) zeichnet.

Syntax

HRESULT CreateDxgiSurfaceRenderTarget(
  [in]  IDXGISurface                          *dxgiSurface,
  [ref] const D2D1_RENDER_TARGET_PROPERTIES & renderTargetProperties,
  [out] ID2D1RenderTarget                     **renderTarget
);

Parameter

[in] dxgiSurface

Typ: IDXGISurface*

Die IDXGISurface, auf die das Renderziel gezeichnet wird.

[ref] renderTargetProperties

Typ: const D2D1_RENDER_TARGET_PROPERTIES &

Der Renderingmodus, das Pixelformat, Remotingoptionen, DPI-Informationen und die minimale DirectX-Unterstützung, die für das Hardwarerendering erforderlich ist. Informationen zu unterstützten Pixelformaten finden Sie unter Unterstützte Pixelformate und Alphamodi.

[out] renderTarget

Typ: ID2D1RenderTarget**

Wenn diese Methode zurückgibt, enthält die Adresse des Zeigers auf das ID2D1RenderTarget-Objekt , das von dieser Methode erstellt wurde.

Rückgabewert

Typ: HRESULT

Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein HRESULT-Fehlercode zurückgegeben.

Hinweise

Um auf eine Direct3D-Oberfläche zu schreiben, rufen Sie eine IDXGISurface ab und übergeben sie an die CreateDxgiSurfaceRenderTarget-Methode, um ein DXGI-Oberflächenrenderingziel zu erstellen. Sie können dann das DXGI-Oberflächenrenderziel verwenden, um 2D-Inhalte auf die DXGI-Oberfläche zu zeichnen.

Ein DXGI-Oberflächenrenderziel ist ein Typ von ID2D1RenderTarget. Wie bei anderen Direct2D-Renderzielen können Sie es verwenden, um Ressourcen zu erstellen und Zeichenbefehle auszugeben.

Das DXGI-Oberflächenrenderziel und die DXGI-Oberfläche müssen das gleiche DXGI-Format verwenden. Wenn Sie beim Erstellen des Renderziels das DXGI_FORMAT_UNKOWN Format angeben, wird automatisch das Format der Oberfläche verwendet.

Das DXGI-Oberflächenrenderziel führt keine DXGI-Oberflächensynchronisierung aus.

Weitere Informationen zum Erstellen und Verwenden von DXGI-Oberflächenrenderzielen finden Sie in der Übersicht über die Direct2D- und Direct3D-Interoperabilität.

Um mit Direct2D zu arbeiten, muss das Direct3D-Gerät, das das IDXGISurface bereitstellt, mit dem flag D3D10_CREATE_DEVICE_BGRA_SUPPORT erstellt werden.

Wenn Sie ein Renderziel erstellen und die Hardwarebeschleunigung verfügbar ist, weisen Sie Ressourcen auf der GPU des Computers zu. Wenn Sie ein Renderziel einmal erstellen und es so lange wie möglich beibehalten, profitieren Sie von Leistungsvorteilen. Ihre Anwendung sollte Renderziele einmal erstellen und diese für die Lebensdauer der Anwendung oder bis die EndDraw-Methode des Renderziels den D2DERR_RECREATE_TARGET-Fehler zurückgibt. Wenn Sie diesen Fehler erhalten, müssen Sie das Renderziel (und alle erstellten Ressourcen) neu erstellen.

Beispiele

Sehen Sie sich das Codebeispiel in ID2D1Factory::CreateDxgiSurfaceRenderTarget an.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile d2d1.h
Bibliothek D2d1.lib
DLL D2d1.dll

Weitere Informationen

CreateDxgiSurfaceRenderTarget(IDXGISurface,const D2D1_RENDER_TARGET_PROPERTIES,ID2D1RenderTarget)

Übersicht über die Interoperabilität von Direct2D und Direct3D

ID2D1Factory