Bagikan melalui


Struktur DDSURFACEDESC (ddraw.h)

Struktur DDSURFACEDESC berisi deskripsi permukaan yang akan dibuat oleh driver.

Sintaks

typedef struct _DDSURFACEDESC {
  DWORD         dwSize;
  DWORD         dwFlags;
  DWORD         dwHeight;
  DWORD         dwWidth;
#if ...
  union {
    LONG  lPitch;
    DWORD dwLinearSize;
  } DUMMYUNIONNAMEN;
  DWORD         dwBackBufferCount;
#else
  union {
    DWORD dwMipMapCount;
    DWORD dwZBufferBitDepth;
    DWORD dwRefreshRate;
  } DUMMYUNIONNAMEN;
#endif
  DWORD         dwAlphaBitDepth;
  DWORD         dwReserved;
  LPVOID        lpSurface;
  DDCOLORKEY    ddckCKDestOverlay;
  DDCOLORKEY    ddckCKDestBlt;
  DDCOLORKEY    ddckCKSrcOverlay;
  DDCOLORKEY    ddckCKSrcBlt;
  DDPIXELFORMAT ddpfPixelFormat;
  DDSCAPS       ddsCaps;
} *LPDDSURFACEDESC, DDSURFACEDESC;

Anggota

dwSize

Menentukan ukuran dalam byte struktur DDSURFACEDESC ini. Anggota ini harus diinisialisasi sebelum struktur digunakan.

dwFlags

Menentukan sekumpulan bendera yang menentukan anggota struktur DDSURFACEDESC apa yang berisi data yang valid. Anggota ini bisa menjadi satu atau beberapa bendera berikut:

Bendera Makna

DDSD_ALL

Semua anggota input berisi data yang valid.

DDSD_ALPHABITDEPTH

Anggota dwAlphaBitDepth valid.

DDSD_BACKBUFFERCOUNT

Anggota dwBackBufferCount valid.

DDSD_CAPS

Anggota ddsCaps valid.

DDSD_CKDESTBLT

Anggota ddckCKDestBlt valid.

DDSD_CKDESTOVERLAY

Anggota ddckCKDestOverlay valid.

DDSD_CKSRCBLT

Anggota ddckCKSrcBlt valid.

DDSD_CKSRCOVERLAY

Anggota ddckCKSrcOverlay valid.

DDSD_HEIGHT

Anggota dwHeight valid.

DDSD_LINEARSIZE

Anggota dwLinearSize valid.

DDSD_MIPMAPCOUNT

Anggota dwMipMapCount valid.

DDSD_PITCH

Anggota lPitch valid.

DDSD_PIXELFORMAT

Anggota ddpfPixelFormat valid.

DDSD_REFRESHRATE

Anggota dwRefreshRate valid.

DDSD_WIDTH

Anggota dwWidth valid.

DDSD_ZBUFFERBITDEPTH

Anggota dwZBufferBitDepth valid.

dwHeight

Menentukan tinggi permukaan, dalam piksel.

dwWidth

Menentukan lebar permukaan, dalam piksel.

DUMMYUNIONNAMEN

T/A

DUMMYUNIONNAMEN.lPitch

Menentukan jumlah byte antara awal dua baris pemindaian yang berdampingan; artinya, jumlah byte yang akan ditambahkan ke alamat awal satu baris pemindaian untuk mencapai alamat awal baris pemindaian berikutnya di bawahnya. Panggilan balik DdCreateSurface driver harus mengembalikan nilai ini.

DUMMYUNIONNAMEN.dwLinearSize

Menentukan ukuran dalam byte permukaan yang tidak berdaya, terlambat dialokasikan, dan dioptimalkan.

dwBackBufferCount

Menentukan jumlah buffer belakang yang terkait dengan permukaan.

DUMMYUNIONNAMEN.dwMipMapCount

Menentukan jumlah tingkat mipmap.

DUMMYUNIONNAMEN.dwZBufferBitDepth

Menentukan kedalaman z-buffer dalam bit per piksel.

DUMMYUNIONNAMEN.dwRefreshRate

Menentukan laju refresh di hertz monitor (digunakan saat mode tampilan dijelaskan).

dwAlphaBitDepth

Menentukan kedalaman buffer alfa dalam bit per piksel.

dwReserved

Dicadangkan, dan harus diatur ke nol.

lpSurface

Menentukan alamat memori permukaan terkait.

ddckCKDestOverlay

Menentukan kunci warna untuk penggunaan overlay tujuan.

ddckCKDestBlt

Menentukan kunci warna untuk penggunaan blt tujuan.

ddckCKSrcOverlay

Menentukan kunci warna untuk penggunaan overlay sumber.

ddckCKSrcBlt

Menentukan kunci warna untuk penggunaan blt sumber.

ddpfPixelFormat

Menentukan struktur DDPIXELFORMAT yang menjelaskan format piksel permukaan.

ddsCaps

Menentukan struktur DDSCAPS yang berisi kemampuan permukaan Microsoft DirectDrawMicrosoft.

Keterangan

Anggota yang relevan berbeda untuk setiap jenis permukaan potensial. Struktur ini biasanya dibuat dan diinisialisasi oleh aplikasi.

Persyaratan

   
Header ddraw.h

Lihat juga