IDCompositionDevice::CreateSurface メソッド (dcomp.h)

コンポジション用の 1 つ以上のビジュアルに関連付けることができる更新可能なサーフェス オブジェクトを作成します。

構文

HRESULT CreateSurface(
  [in]  UINT                 width,
  [in]  UINT                 height,
  [in]  DXGI_FORMAT          pixelFormat,
  [in]  DXGI_ALPHA_MODE      alphaMode,
  [out] IDCompositionSurface **surface
);

パラメーター

[in] width

型: UINT

サーフェスの幅 (ピクセル単位)。

[in] height

型: UINT

サーフェスの高さ (ピクセル単位)。

[in] pixelFormat

種類: DXGI_FORMAT

サーフェスのピクセル形式。

[in] alphaMode

種類: DXGI_ALPHA_MODE

アルファ チャネルがピクセル形式に含まれている場合のアルファ チャネルの形式。 次のいずれかの値を指定できます。

説明
DXGI_ALPHA_MODE_UNSPECIFIED アルファ チャネルが指定されていません。 この値は、 DXGI_ALPHA_MODE_IGNOREと同じ効果を持ちます。
DXGI_ALPHA_MODE_PREMULTIPLIED カラー チャネルには、アルファ チャネルで事前に乗算された値が含まれています。
DXGI_ALPHA_MODE_IGNORE アルファ チャネルは無視し、ビットマップは不透明にレンダリングする必要があります。

[out] surface

種類: IDCompositionSurface**

新しく作成されたサーフェス オブジェクト。 このパラメーターを NULL にすることはできません。

戻り値

種類: HRESULT

関数が成功した場合は、S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。 エラー コードの一覧については、「 DirectComposition エラー コード 」を参照してください。

注釈

Microsoft DirectComposition サーフェスは、コンポジション用のビジュアルに関連付けることができるピクセルの四角形の配列です。

新しく作成されたサーフェス オブジェクトは、初期化されていない状態です。 初期化されていない間、サーフェスはビジュアル ツリーの構成には影響しません。 透明ピクセルが 100% のサーフェスとまったく同じように動作します。

ピクセル データを使用してサーフェスを初期化するには、 IDCompositionSurface::BeginDraw メソッドを使用します。 このメソッドの最初の呼び出しでは、すべてのピクセルの初期値を提供するために、サーフェス領域全体をカバーする必要があります。 後続の呼び出しでは、更新するサーフェスの小さなサブ四角形を指定できます。

DirectComposition サーフェスでは、次のピクセル形式がサポートされます。

  • DXGI_FORMAT_B8G8R8A8_UNORM
  • DXGI_FORMAT_R8G8B8A8_UNORM
  • DXGI_FORMAT_R16G16B16A16_FLOAT

要件

   
サポートされている最小のクライアント Windows 8 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー dcomp.h
Library Dcomp.lib
[DLL] Dcomp.dll

こちらもご覧ください

IDCompositionDevice

IDCompositionDevice::CreateVirtualSurface