Bagikan melalui


Struktur DDBLTFX (ddraw.h)

Struktur DDBLTFX melewati operasi raster (ROP), efek, dan mengambil alih informasi ke metode IDirectDrawSurface7::Blt . Struktur ini juga merupakan bagian dari struktur DDBLTBATCH yang digunakan dengan metode IDirectDrawSurface7::BltBatch .

Sintaks

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;

Anggota

dwSize

Ukuran struktur, dalam byte. Anggota ini harus diinisialisasi sebelum struktur digunakan.

dwDDFX

Jenis operasi FX. Jenis berikut ditentukan.

DDBLTFX_ARITHSTRETCHY

Menggunakan peregangan aritmatika di sepanjang sumbu y untuk transfer blok bit ini (bitblt).

DDBLTFX_MIRRORLEFTRIGHT

Mengubah permukaan pada sumbu y-nya. Bitblt ini mencerminkan permukaan dari kiri ke kanan.

DDBLTFX_MIRRORUPDOWN

Mengubah permukaan pada sumbu x- nya. Bitblt ini mencerminkan permukaan dari atas ke bawah.

DDBLTFX_NOTEARING

Menjadwalkan bitblt ini untuk menghindari merobek.

DDBLTFX_ROTATE180

Memutar permukaan 180 derajat searah jaring jam selama bitblt ini.

DDBLTFX_ROTATE270

Memutar permukaan 270 derajat searah jaring jam selama bitblt ini.

DDBLTFX_ROTATE90

Memutar permukaan 90 derajat searah jaring jam selama bitblt ini.

DDBLTFX_ZBUFFERBASEDEST

Menambahkan anggota dwZBufferBaseDest ke masing-masing nilai z sumber sebelum membandingkannya dengan nilai z tujuan selama z-bitblt ini.

DDBLTFX_ZBUFFERRANGE

Menggunakan anggota dwZBufferLow dan dwZBufferHigh sebagai nilai rentang untuk menentukan batas bit yang disalin dari permukaan sumber selama z-bitblt ini.

dwROP

Operasi win32 raster. Anda dapat mengambil daftar operasi raster yang didukung dengan memanggil metode IDirectDraw7::GetCaps .

dwDDROP

Operasi raster DirectDraw.

dwRotationAngle

Sudut rotasi untuk bitblt.

dwZBufferOpCode

Z-buffer membandingkan.

dwZBufferLow

Batas rendah z-buffer.

dwZBufferHigh

Batas tinggi z-buffer.

dwZBufferBaseDest

Nilai dasar tujuan dari z-buffer.

dwZDestConstBitDepth

Kedalaman bit tujuan z-constant.

DUMMYUNIONNAMEN

DUMMYUNIONNAMEN.dwZDestConst

DUMMYUNIONNAMEN.lpDDSZBufferDest

dwZSrcConstBitDepth

Kedalaman bit dari sumber z-konstanta.

DUMMYUNIONNAMEN.dwZSrcConst

DUMMYUNIONNAMEN.lpDDSZBufferSrc

dwAlphaEdgeBlendBitDepth

Kedalaman bit konstanta untuk campuran tepi alfa.

dwAlphaEdgeBlend

Konstanta alfa yang digunakan untuk penpaduan tepi.

dwReserved

Dicadangkan

dwAlphaDestConstBitDepth

Kedalaman bit konstanta alfa tujuan.

DUMMYUNIONNAMEN.dwAlphaDestConst

DUMMYUNIONNAMEN.lpDDSAlphaDest

dwAlphaSrcConstBitDepth

Kedalaman bit konstanta alfa sumber.

DUMMYUNIONNAMEN.dwAlphaSrcConst

DUMMYUNIONNAMEN.lpDDSAlphaSrc

DUMMYUNIONNAMEN.dwFillColor

DUMMYUNIONNAMEN.dwFillDepth

DUMMYUNIONNAMEN.dwFillPixel

DUMMYUNIONNAMEN.lpDDSPattern

ddckDestColorkey

Penimpaan kunci warna tujuan.

ddckSrcColorkey

Penimpaan kunci warna sumber.

Keterangan

Penyatuan dalam struktur ini telah diperbarui untuk bekerja dengan kompilator yang tidak mendukung serikat tanpa nama. Jika compiler Anda tidak mendukung union tanpa nama, tentukan token NONAMELESSUNION sebelum menyertakan file header Ddraw.h.

Persyaratan

Persyaratan Nilai
Header ddraw.h