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