Platform SDK: DirectX

主要な DDCAPS メンバとフラグ

[C++]

サポートされたオーバーレイ機能についての情報を取得するには、IDirectDraw7::GetCaps メソッドを呼び出す。このメソッドは、すべての機能を記述している情報を DDCAPS 構造体に埋め込む。

ハードウェア機能を報告する場合、デバイス ドライバは dwCaps 構造体のメンバにフラグを設定し、いつ与えられたタイプの制限がハードウェアにより強制されるかを示す。ドライバの能力を取得してから、どの制限が適用するのかを dwCaps メンバのフラグで調べる。DDCAPS 構造体には、オーバーレイ サーフェスに対するハードウェア制限を記述した情報を伝達する 9 つのメンバがある。以下の表は、オーバーレイに関連したメンバと対応するフラグを示す。

メンバ フラグ
dwMaxVisibleOverlays このメンバは常に有効
dwCurrVisibleOverlays このメンバは常に有効
dwAlignBoundarySrc DDCAPS_ALIGNBOUNDARYSRC
dwAlignSizeSrc DDCAPS_ALIGNSIZESRC
dwAlignBoundaryDest DDCAPS_ALIGNBOUNDARYDEST
dwAlignSizeDest DDCAPS_ALIGNSIZEDEST
dwAlignStrideAlign DDCAPS_ALIGNSTRIDE
dwMinOverlayStretch DDCAPS_OVERLAYSTRETCH
dwMaxOverlayStretch DDCAPS_OVERLAYSTRETCH

dwMaxVisibleOverlays および dwCurrVisibleOverlays メンバは、ハードウェアが表示することのできるオーバーレイの最大数、およびその中で現在表示状態にある数についての情報を伝達する。

さらに、ハードウェアは dwAlignBoundarySrcdwAlignSizeSrcdwAlignBoundaryDestdwAlignSizeDest、および dwAlignStrideAlign メンバにある矩形の位置やサイズ アライメントの制限を報告する。これらのメンバの値は、オーバーレイ サーフェスを表示するときに、転送元および転送先矩形のサイズや位置をどのようにするかを指示する。詳細については、「転送元矩形と転送先矩形」および「境界とサイズ アライメント」を参照すること。

また、ハードウェアは dwMinOverlayStretch および dwMaxOverlayStretch メンバの伸縮係数を報告する。詳細については、「最小および最大伸縮係数」を参照すること。

[Visual Basic]

サポートされたオーバーレイ機能についての情報を取得するには、DirectDraw7.GetCaps メソッドを呼び出す。このメソッドは、すべての機能を記述している情報を DDCAPS 型に埋め込む。

ハードウェア機能を報告する場合、デバイス ドライバは lCaps 構造体のメンバにフラグを設定し、いつ与えられたタイプの制限がハードウェアにより強制されるかを示す。ドライバの能力を取得してから、どの制限が適用するのかを lCaps メンバのフラグで調べる。DDCAPS 型には、オーバーレイ サーフェスに対するハードウェア制限を記述した情報を伝達する 9 つのメンバがある。以下の表は、オーバーレイに関連したメンバと対応するフラグを示す。

メンバ フラグ
lMaxVisibleOverlays このメンバは常に有効
lCurrVisibleOverlays このメンバは常に有効
lAlignBoundarySrc DDCAPS_ALIGNBOUNDARYSRC
lAlignSizeSrc DDCAPS_ALIGNSIZESRC
lAlignBoundaryDest DDCAPS_ALIGNBOUNDARYDEST
lAlignSizeDest DDCAPS_ALIGNSIZEDEST
lAlignStrideAlign DDCAPS_ALIGNSTRIDE
lMinOverlayStretch DDCAPS_OVERLAYSTRETCH
lMaxOverlayStretch DDCAPS_OVERLAYSTRETCH

lMaxVisibleOverlays および lCurrVisibleOverlays メンバは、ハードウェアが表示することのできるオーバーレイの最大数、およびその中で現在表示状態にある数についての情報を伝達する。

さらに、ハードウェアは lAlignBoundarySrclAlignSizeSrclAlignBoundaryDestlAlignSizeDest、および lAlignStrideAlign メンバにある矩形の位置やサイズ アライメントの制限を報告する。これらのメンバの値は、オーバーレイ サーフェスを表示するときに、転送元および転送先矩形のサイズや位置をどのようにするかを指示する。詳細については、「転送元矩形と転送先矩形」および「境界とサイズ アライメント」を参照すること。

また、ハードウェアは lMinOverlayStretch および lMaxOverlayStretch メンバの伸縮係数を報告する。詳細については、「最小および最大伸縮係数」を参照すること。