DDBLTFX
DDBLTFX 構造体は、ラスタ処理 (ROPs)、エフェクト、およびオーバーライド情報を IDirectDrawSurface7::Blt メソッドに渡す。この構造体は、IDirectDrawSurface7::BltBatch メソッドと共に使用する DDBLTBATCH 構造体の一部でもある。
typedef struct _DDBLTFX{
DWORD dwSize;
DWORD dwDDFX;
DWORD dwROP;
DWORD dwDDROP;
DWORD dwRotationAngle;
DWORD dwZBufferOpCode;
DWORD dwZBufferLow;
DWORD dwZBufferHigh;
DWORD dwZBufferBaseDest;
DWORD dwZDestConstBitDepth;
union
{
DWORD dwZDestConst;
LPDIRECTDRAWSURFACE lpDDSZBufferDest;
} DUMMYUNIONNAMEN(1);
DWORD dwZSrcConstBitDepth;
union
{
DWORD dwZSrcConst;
LPDIRECTDRAWSURFACE lpDDSZBufferSrc;
} DUMMYUNIONNAMEN(2);
DWORD dwAlphaEdgeBlendBitDepth;
DWORD dwAlphaEdgeBlend;
DWORD dwReserved;
DWORD dwAlphaDestConstBitDepth;
union
{
DWORD dwAlphaDestConst;
LPDIRECTDRAWSURFACE lpDDSAlphaDest;
} DUMMYUNIONNAMEN(3);
DWORD dwAlphaSrcConstBitDepth;
union
{
DWORD dwAlphaSrcConst;
LPDIRECTDRAWSURFACE lpDDSAlphaSrc;
} DUMMYUNIONNAMEN(4);
union
{
DWORD dwFillColor;
DWORD dwFillDepth;
DWORD dwFillPixel;
LPDIRECTDRAWSURFACE lpDDSPattern;
} DUMMYUNIONNAMEN(5);
DDCOLORKEY ddckDestColorkey;
DDCOLORKEY ddckSrcColorkey;
} DDBLTFX,FAR* LPDDBLTFX;
メンバ
- dwSize
- バイト単位の構造体のサイズ。このメンバは、構造体を使用する前に初期化しなくてはならない。
- dwDDFX
- FX 処理のタイプ。以下の種類が定義される。
- DDBLTFX_ARITHSTRETCHY
- このブリットに対して、y 軸に沿って算術伸縮を使用する。
- DDBLTFX_MIRRORLEFTRIGHT
- y 軸上でサーフェスを回転する。このブリットは、サーフェスを左から右にミラー化する。
- DDBLTFX_MIRRORUPDOWN
- x 軸上でサーフェスを回転する。このブリットは、サーフェスを上から下にミラー化する。
- DDBLTFX_NOTEARING
- このブリットでテアリングが発生しないようにする。
- DDBLTFX_ROTATE180
- このブリット中に、サーフェスを時計回りに 180 度回転する。
- DDBLTFX_ROTATE270
- このブリット中に、サーフェスを時計回りに 270 度回転する。
- DDBLTFX_ROTATE90
- このブリット中に、サーフェスを時計回りに 90 度回転する。
- DDBLTFX_ZBUFFERBASEDEST
- この z ブリット中に、転送先 z 値と比較する前の転送元 z 値の各々に dwZBufferBaseDest メンバを追加する。
- DDBLTFX_ZBUFFERRANGE
- この z ブリット中に、転送元サーフェスからコピーしたビットへの限界を指定する範囲値として dwZBufferLow および dwZBufferHigh メンバを使用する。
- dwROP
- Win32 ラスタ処理。サポートされるラスタ処理のリストを取得するには、IDirectDraw7::GetCaps メソッドを呼び出す。
- dwDDROP
- DirectDraw ラスタ処理。
- dwRotationAngle
- ブリットにおける回転角度。
- dwZBufferOpCode
- Z バッファ比較。
- dwZBufferLow
- Z バッファの最低限界。
- dwZBufferHigh
- Z バッファの最高限界。
- dwZBufferBaseDest
- Z バッファの転送先基底値。
- dwZDestConstBitDepth
- 転送先 z 定数のビット深度。
- dwZDestConst
- 転送先 Z バッファとして使用する定数。
- lpDDSZBufferDest
- 転送先 Z バッファとして使用するサーフェス。
- dwZSrcConstBitDepth
- 転送元 z 定数のビット深度。
- dwZSrcConst
- 転送元 Z バッファとして使用する定数。
- lpDDSZBufferSrc
- 転送元 Z バッファとして使用するサーフェス。
- dwAlphaEdgeBlendBitDepth
- アルファ エッジ ブレンドにおけるビット深度定数。
- dwAlphaEdgeBlend
- エッジ ブレンドで使用するアルファ定数。
- dwReserved
- 将来的な使用のために確保されている。
- dwAlphaDestConstBitDepth
- 転送先アルファ定数のビット深度。
- dwAlphaDestConst
- 転送先アルファ チャネルとして使用する定数。
- lpDDSAlphaDest
- 転送先アルファ チャネルとして使用するサーフェス。
- dwAlphaSrcConstBitDepth
- 転送元アルファ定数のビット深度。
- dwAlphaSrcConst
- 転送元アルファ チャネルとして使用する定数。
- lpDDSAlphaSrc
- 転送元アルファ チャネルとして使用するサーフェス。
- dwFillColor
- DDBLT_COLORFILL を指定するときに、サーフェスを塗りつぶすために使用する色。この値は、転送先サーフェスのピクセル フォーマットに該当するピクセルでなくてはならない。パレット化サーフェスであればパレット インデックス、16 ビット RGB サーフェスであれば 16 ビット ピクセル値となる。
- dwFillDepth
- Z バッファにおける深度値。
- dwFillPixel
- RGBA または RGBZ で塗りつぶすためのピクセル値。RGBZ で塗りつぶすために使用するアプリケーションは、dwFillColor または dwFillDepth ではなく、このメンバを使用する。
- lpDDSPattern
- パターンとして使用するサーフェス。パターンは、転送元および転送先を組み合わせる特定のブリット処理で使用する。
- ddckDestColorkey
- 転送先カラー キー オーバーライド。
- ddckSrcColorkey
- 転送元カラー キー オーバーライド。
注意
この構造体の集合は、名前のない集合をサポートしないコンパイラで機能するように更新されている。コンパイラが名前のない集合をサポートしない場合は、Ddraw.h ヘッダー ファイルをインクルードする前に NONAMELESSUNION トークンを定義する。
Windows NT/2000 : Windows NT 4.0 Service Pack 3 またはそれ以降が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : ddraw.h で宣言。