Platform SDK: DirectX

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 で宣言。