ID2D1Factory::CreateHwndRenderTarget メソッド

ウィンドウにレンダリングするレンダー ターゲットである ID2D1HwndRenderTarget を作成します。

構文

HRESULT CreateHwndRenderTarget(
  [ref]  const D2D1_RENDER_TARGET_PROPERTIES &renderTargetProperties,
  [ref]  const D2D1_HWND_RENDER_TARGET_PROPERTIES &hwndRenderTargetProperties,
  [out]  ID2D1HwndRenderTarget **hwndRenderTarget
);

パラメーター

  • renderTargetProperties
    D2D1_RENDER_TARGET_PROPERTIES レンダリング モード、ピクセル形式、リモート処理オプション、DPI 情報、およびハードウェア レンダリングに必要な最小限の DirectX サポート。サポートされているピクセル形式については、「サポートされているピクセル形式とアルファ モード」を参照してください。
  • hwndRenderTargetProperties
    D2D1_HWND_RENDER_TARGET_PROPERTIES ウィンドウ ハンドル、初期サイズ (ピクセル単位)、および表示オプション。
  • hwndRenderTarget [out]
    ID2D1HwndRenderTarget このメソッドが返されるときに、このメソッドによって作成された ID2D1HwndRenderTarget オブジェクトへのポインターのアドレスが格納されます。

戻り値

HRESULT

メソッドが成功した場合は、S_OK が返されます。 それ以外の場合は、エラー コードが返されます。HRESULT.

解説

レンダー ターゲットを作成し、ハードウェア アクセラレータが使用できる場合は、コンピューターの GPU にリソースを割り当てます。レンダー ターゲットを一度作成し、できるだけ長く保持することにより、パフォーマンスを向上することができます。アプリケーションでは、一度レンダー ターゲットを作成したら、アプリケーションが有効な間または D2DERR_RECREATE_TARGET エラーが発生するまで、そのターゲットを保持する必要があります。このエラーが発生すると、レンダー ターゲット (およびレンダー ターゲットによって作成されたすべてのリソース) を作成し直す必要があります。

次の例では、ID2D1HwndRenderTarget を作成します。完全なコードについては、「"Hello World" サンプル」を参照してください。

  RECT rc;
GetClientRect(m_hwnd, &rc);

D2D1_SIZE_U size = D2D1::SizeU(
    rc.right - rc.left,
    rc.bottom - rc.top
    );

// Create a Direct2D render target.
hr = m_pD2DFactory->CreateHwndRenderTarget(
    D2D1::RenderTargetProperties(),
    D2D1::HwndRenderTargetProperties(m_hwnd, size),
    &m_pRenderTarget
    );

要件

クライアントの最小要件

Windows 7, Windows Vista SP2 および Windows Vista 用のプラットフォーム更新プログラム

サーバーの最小要件

Windows Server 2008 R2, Windows Server 2008 SP2 および Windows Server 2008 用のプラットフォーム更新プログラム

ヘッダー

D2d1.h

ライブラリ

D2d1.lib

DLL

D2d1.dll

参照

ID2D1Factory

"Hello, World" サンプル