共用方式為


DDBLTFX 結構 (ddraw.h)

DDBLTFX 結構會將點陣作業 (IP) 、效果和覆寫資訊傳遞至 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;
#if ...
  union {
    DWORD               dwZDestConst;
    LPDIRECTDRAWSURFACE lpDDSZBufferDest;
  } DUMMYUNIONNAMEN;
  DWORD      dwZSrcConstBitDepth;
#elif
  union {
    DWORD               dwZSrcConst;
    LPDIRECTDRAWSURFACE lpDDSZBufferSrc;
  } DUMMYUNIONNAMEN;
  DWORD      dwAlphaEdgeBlendBitDepth;
  DWORD      dwAlphaEdgeBlend;
  DWORD      dwReserved;
  DWORD      dwAlphaDestConstBitDepth;
#elif
  union {
    DWORD               dwAlphaDestConst;
    LPDIRECTDRAWSURFACE lpDDSAlphaDest;
  } DUMMYUNIONNAMEN;
  DWORD      dwAlphaSrcConstBitDepth;
#elif
  union {
    DWORD               dwAlphaSrcConst;
    LPDIRECTDRAWSURFACE lpDDSAlphaSrc;
  } DUMMYUNIONNAMEN;
#else
  union {
    DWORD               dwFillColor;
    DWORD               dwFillDepth;
    DWORD               dwFillPixel;
    LPDIRECTDRAWSURFACE lpDDSPattern;
  } DUMMYUNIONNAMEN;
#endif
  DDCOLORKEY ddckDestColorkey;
  DDCOLORKEY ddckSrcColorkey;
} DDBLTFX;

成員

dwSize

結構的大小,以位元組為單位。 使用 結構之前,必須先初始化這個成員。

dwDDFX

FX 作業的類型。 定義下列類型。

DDBLTFX_ARITHSTRETCHY

針對這個位區塊傳輸使用沿著 y 軸的算術延展 (bitblt) 。

DDBLTFX_MIRRORLEFTRIGHT

開啟其 Y 軸上的表面。 這個 bitblt 會從左至右鏡像表面。

DDBLTFX_MIRRORUPDOWN

開啟其 X 軸上的表面。 這個 bitblt 會將表面從上到下鏡像。

DDBLTFX_NOTEARING

排程此 bitblt 以避免卸除。

DDBLTFX_ROTATE180

在這個 bitblt 期間,順時針旋轉表面 180 度。

DDBLTFX_ROTATE270

在這個位期間,會順時針旋轉表面 270 度。

DDBLTFX_ROTATE90

在這個 bitblt 期間順時針旋轉表面 90 度。

DDBLTFX_ZBUFFERBASEDEST

在這個 z-bitblt 期間,先將 dwZBufferBaseDest 成員新增至每個來源 z 值,再將它們與目的地 z 值進行比較。

DDBLTFX_ZBUFFERRANGE

使用 dwZBufferLowdwZBufferHigh 成員做為範圍值,指定在此 z 位blt 期間從來源介面複製的位限制。

dwROP

Win32 點陣作業。 您可以呼叫 IDirectDraw7::GetCaps 方法來擷取支援的點陣作業清單。

dwDDROP

DirectDraw 點陣作業。

dwRotationAngle

bitblt 的旋轉角度。

dwZBufferOpCode

Z 緩衝區比較。

dwZBufferLow

z 緩衝區的低限制。

dwZBufferHigh

z 緩衝區的高限制。

dwZBufferBaseDest

z 緩衝區的目的地基底值。

dwZDestConstBitDepth

目的地 z 常數的位深度。

DUMMYUNIONNAMEN

DUMMYUNIONNAMEN.dwZDestConst

DUMMYUNIONNAMEN.lpDDSZBufferDest

dwZSrcConstBitDepth

來源 z 常數的位深度。

DUMMYUNIONNAMEN.dwZSrcConst

DUMMYUNIONNAMEN.lpDDSZBufferSrc

dwAlphaEdgeBlendBitDepth

Alpha 邊緣混合常數的位深度。

dwAlphaEdgeBlend

用於邊緣混合的Alpha常數。

dwReserved

保留

dwAlphaDestConstBitDepth

目的地 Alpha 常數的位深度。

DUMMYUNIONNAMEN.dwAlphaDestConst

DUMMYUNIONNAMEN.lpDDSAlphaDest

dwAlphaSrcConstBitDepth

來源Alpha常數位深度。

DUMMYUNIONNAMEN.dwAlphaSrcConst

DUMMYUNIONNAMEN.lpDDSAlphaSrc

DUMMYUNIONNAMEN.dwFillColor

DUMMYUNIONNAMEN.dwFillDepth

DUMMYUNIONNAMEN.dwFillPixel

DUMMYUNIONNAMEN.lpDDSPattern

ddckDestColorkey

目的地色彩金鑰覆寫。

ddckSrcColorkey

來源色彩索引鍵覆寫。

備註

此結構中的等位已更新,以使用不支援無名稱等位的編譯程式。 如果您的編譯程式不支援無名稱等位,請先定義NONAMELESSUNION令牌,再包含 Ddraw.h 頭檔。

規格需求

需求
標頭 ddraw.h