次の方法で共有


D3DDDIARG_COMPOSERECTS構造体 (d3dumddi.h)

D3DDDIARG_COMPOSERECTS構造体は、四角形の領域を構成するために使用されるパラメーターを記述します。

構文

typedef struct _D3DDDIARG_COMPOSERECTS {
  [in] HANDLE                hSrcResource;
  [in] UINT                  SrcSubResourceIndex;
  [in] HANDLE                hDstResource;
  [in] UINT                  DstSubResourceIndex;
  [in] HANDLE                hSrcRectDescsVB;
  [in] UINT                  NumRects;
  [in] HANDLE                hDstRectDescsVB;
  [in] D3DDDI_COMPOSERECTSOP Operation;
  [in] INT                   XOffset;
  [in] INT                   YOffset;
} D3DDDIARG_COMPOSERECTS;

メンバーズ

[in] hSrcResource

ソース サーフェスを含むソース リソースへのハンドル。 サーフェスが作成されると、ユーザー モード ディスプレイ ドライバーは、Format メンバーのD3DDDIFMT_A1 (ピクセルあたり 1 ビット) の値を受け取り、ドライバーの CreateResource 関数の呼び出しで、D3DDDIARG_CREATERESOURCE 構造体の Flags メンバーの TextApi ビット フィールド フラグを受け取ります。 サーフェスはテクスチャの一部として作成する必要があります。

[in] SrcSubResourceIndex

ソース リソース内のソース サーフェイスへのインデックス。

[in] hDstResource

宛先サーフェスを含む宛先リソースへのハンドル。 サーフェスが作成されると、ユーザー モード ディスプレイ ドライバーは、ドライバーの CreateResourceの呼び出しで、D3DDDIARG_CREATERESOURCEFormat メンバーのD3DDDIFMT_A1 (ピクセルあたり 1 ビット) の値を受け取ります。 サーフェスはテクスチャの一部として作成する必要があります。 TextApi ビット フィールド フラグを使用してサーフェスが作成されている可能性があります。

[in] DstSubResourceIndex

ターゲット リソース内の宛先サーフェスへのインデックス。

[in] hSrcRectDescsVB

D3DCOMPOSERECTSRCDESC構造体の配列を含む頂点バッファーへのハンドル。 配列内の各要素は、ソースサーフェス上に四角形を定義します。 頂点バッファーが作成されると、ユーザー モードのディスプレイ ドライバーは、ドライバーの CreateResource 関数の呼び出しで、D3DDDIARG_CREATERESOURCE 構造体の Flags メンバーの TextApi ビット フィールド フラグを受け取ります。

[in] NumRects

コピーする四角形領域の数。これは、hDstRectDescsVB メンバーによって識別される頂点バッファー内のD3DCOMPOSERECTDSTDESC構造体の数です。 ドライバーは、NumRects が 0xFFFF より大きい値に設定された ComposeRects への呼び出しを無視する必要があります。

[in] hDstRectDescsVB

D3DCOMPOSERECTDSTDESC構造体の配列を含む頂点バッファーへのハンドル。 配列内の各要素は、コピー元の四角形をコピー先のサーフェス上でコピーする場所を定義します。 詳細については、次の「解説」セクションを参照してください。 頂点バッファーが作成されると、ユーザー モードのディスプレイ ドライバーは、ドライバーの CreateResource 関数の呼び出しで、D3DDDIARG_CREATERESOURCE 構造体の Flags メンバーの TextApi ビット フィールド フラグを受け取ります。

[in] Operation

四角形の領域を構成する方法を説明するD3DDDI_COMPOSERECTSOP値。 このメンバーには、次のいずれかの値を指定できます。

値の 意味
D3DDDICOMPOSERECTS_COPY 各ソース ビットをコピー先にコピーします。
D3DDDICOMPOSERECTS_OR OR 操作でソース ビットと宛先ビットを結合し、コピー先にコピーします。
D3DDDICOMPOSERECTS_AND AND 操作でソース ビットと宛先ビットを結合し、コピー先にコピーします。
D3DDDICOMPOSERECTS_NEG ソース ビットの負の部分を宛先ビットと結合し、コピー先にコピーします。 [Dest ビット & (~ Src ビット)]

[in] XOffset

x-座標に追加するオフセット。 オフセットに負の値を指定すると、結果として得られる四角形が拒否またはクリップされる可能性があります。

[in] YOffset

y に追加するオフセット-すべての宛先矩形領域の座標。 オフセットに負の値を指定すると、結果として得られる四角形が拒否またはクリップされる可能性があります。

備考

作成命令を含む頂点バッファーは、D3DUSAGE_TEXTAPI使用して作成されます。 次のコードでは、頂点バッファー配列に含まれる構造体を定義します。 これらの構造の詳細については、DirectX SDK のドキュメントを参照してください。

struct D3DCOMPOSERECTSRCDESC {
USHORT X, Y;          // Coordinates of top-left corner
USHORT width, height; // Width and height of the glyph in bits
};

struct D3DCOMPOSERECTDSTDESC {
USHORT RectDescIndex; // Index of one of the D3DCOMPOSERECTSRCDESC structures in the vertex buffer represented by hSrcRectDescsVB
USHORT reserved;      // Use to align the struct and fields to good boundaries
SHORT X, Y;            // Position in bits in the destination surface
};

必要条件

要件 価値
サポートされる最小クライアント Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。
ヘッダー d3dumddi.h (D3dumddi.h を含む)

関連項目

ComposeRects

RECT