Antarmuka IDirectDrawSurface7 (ddraw.h)
Aplikasi menggunakan metode antarmuka IDirectDrawSurface7 untuk membuat objek DirectDrawSurface dan bekerja dengan variabel tingkat sistem. Bagian ini adalah referensi ke metode antarmuka ini.
Warisan
Antarmuka IDirectDrawSurface7 mewarisi dari antarmuka IUnknown . IDirectDrawSurface7 juga memiliki jenis anggota ini:
Metode
Antarmuka IDirectDrawSurface7 memiliki metode ini.
IDirectDrawSurface7::AddAttachedSurface Melampirkan permukaan z-buffer yang ditentukan ke permukaan ini. |
IDirectDrawSurface7::AddOverlayDirtyRect Metode IDirectDrawSurface7::AddOverlayDirtyRect saat ini tidak diimplementasikan. |
IDirectDrawSurface7::Blt Melakukan transfer blok bit (bitblt). Metode ini tidak mendukung z-buffering atau alpha blending selama operasi bitblt. |
IDirectDrawSurface7::BltBatch Metode IDirectDrawSurface7::BltBatch saat ini tidak diimplementasikan. |
IDirectDrawSurface7::BltFast Melakukan bitblt salinan sumber atau bitblt transparan dengan menggunakan kunci warna sumber atau kunci warna tujuan. |
IDirectDrawSurface7::ChangeUniquenessValue Memperbarui nilai keunikan secara manual untuk permukaan ini. |
IDirectDrawSurface7::D eleteAttachedSurface Melepaskan satu atau beberapa permukaan yang terpasang. |
IDirectDrawSurface7::EnumAttachedSurfaces Menghitung semua permukaan yang melekat pada permukaan ini. |
IDirectDrawSurface7::EnumOverlayZOrders Menghitung permukaan overlay pada tujuan yang ditentukan. Anda dapat menghitung overlay dalam urutan front-to-back atau back-to-front. |
IDirectDrawSurface7::Flip Membuat memori permukaan yang terkait dengan permukaan DDSCAPS_BACKBUFFER menjadi terkait dengan permukaan buffer depan. |
IDirectDrawSurface7::FreePrivateData Membebaskan data privat yang ditentukan yang terkait dengan permukaan ini. |
IDirectDrawSurface7::GetAttachedSurface Mendapatkan permukaan terpasang yang memiliki kemampuan yang ditentukan, dan menaikkan jumlah referensi antarmuka yang diambil. |
IDirectDrawSurface7::GetBltStatus Mendapatkan status tentang operasi transfer blok bit (bitblt). |
IDirectDrawSurface7::GetCaps Mengambil kemampuan permukaan ini. Kemampuan ini belum tentu terkait dengan kemampuan perangkat tampilan. |
IDirectDrawSurface7::GetClipper Mengambil objek DirectDrawClipper yang terkait dengan permukaan ini, dan menaikkan jumlah referensi clipper yang dikembalikan. |
IDirectDrawSurface7::GetColorKey Mengambil nilai kunci warna untuk permukaan ini. |
IDirectDrawSurface7::GetDC Membuat handel yang kompatibel dengan GDI dari konteks perangkat untuk permukaan ini. |
IDirectDrawSurface7::GetDDInterface Mengambil antarmuka ke objek DirectDraw yang digunakan untuk membuat permukaan ini. |
IDirectDrawSurface7::GetFlipStatus Mengambil status tentang apakah permukaan ini telah menyelesaikan proses membaliknya. |
IDirectDrawSurface7::GetLOD Mengambil tingkat detail maksimum (LOD) yang saat ini ditetapkan untuk permukaan mipmap terkelola. Metode ini hanya berhasil pada tekstur terkelola. |
IDirectDrawSurface7::GetOverlayPosition Mengambil koordinat tampilan permukaan ini. Metode ini digunakan pada permukaan overlay aktif yang terlihat (yaitu, permukaan yang memiliki set bendera DDSCAPS_OVERLAY). |
IDirectDrawSurface7::GetPalette Mengambil objek DirectDrawPalette yang terkait dengan permukaan ini, dan menaikkan jumlah referensi palet yang dikembalikan. |
IDirectDrawSurface7::GetPixelFormat Mengambil format warna dan piksel permukaan ini. |
IDirectDrawSurface7::GetPriority Mengambil prioritas manajemen tekstur untuk tekstur ini. Metode ini hanya berhasil pada tekstur terkelola. |
IDirectDrawSurface7::GetPrivateData Menyalin data privat yang terkait dengan permukaan ini ke buffer yang disediakan. |
IDirectDrawSurface7::GetSurfaceDesc Mengambil deskripsi permukaan ini dalam kondisinya saat ini. |
IDirectDrawSurface7::GetUniquenessValue Mengambil nilai keunikan saat ini untuk permukaan ini. |
IDirectDrawSurface7::Initialize Menginisialisasi objek DirectDrawSurface. |
IDirectDrawSurface7::IsLost Menentukan apakah memori permukaan yang terkait dengan objek DirectDrawSurface telah dibebaskan. |
IDirectDrawSurface7::Lock Mendapatkan pointer ke memori permukaan. |
IDirectDrawSurface7::P ageLock Mencegah permukaan memori sistem di-paged out sementara operasi transfer blok bit (bitblt) yang menggunakan transfer akses memori langsung (DMA) ke atau dari memori sistem sedang berlangsung. |
IDirectDrawSurface7::P ageUnlock Membuka permukaan memori sistem, yang kemudian memungkinkannya untuk di-page out. |
IDirectDrawSurface7::ReleaseDC Merilis handel konteks perangkat yang sebelumnya diperoleh dengan menggunakan metode IDirectDrawSurface7::GetDC. |
IDirectDrawSurface7::Restore Memulihkan permukaan yang telah hilang. Ini terjadi ketika memori permukaan yang terkait dengan objek DirectDrawSurface telah dibebaskan. |
IDirectDrawSurface7::SetClipper Melampirkan objek clipper ke, atau menghapus satu dari, permukaan ini. |
IDirectDrawSurface7::SetColorKey Mengatur nilai kunci warna untuk objek DirectDrawSurface jika perangkat keras mendukung kunci warna per permukaan. |
IDirectDrawSurface7::SetLOD Mengatur tingkat detail maksimum (LOD) untuk permukaan mipmap terkelola. Metode ini hanya berhasil pada tekstur terkelola. |
IDirectDrawSurface7::SetOverlayPosition Mengubah koordinat tampilan permukaan overlay. |
IDirectDrawSurface7::SetPalette Melampirkan objek palet ke (atau melepaskan satu dari) permukaan. Permukaan menggunakan palet ini untuk semua operasi berikutnya. Perubahan palet segera terjadi, tanpa memperhatikan pengaturan waktu refresh. |
IDirectDrawSurface7::SetPriority Menetapkan prioritas manajemen tekstur untuk tekstur ini. Metode ini hanya berhasil pada tekstur terkelola. |
IDirectDrawSurface7::SetPrivateData Mengaitkan data dengan permukaan yang dimaksudkan untuk digunakan oleh aplikasi, bukan oleh DirectDraw. Data diteruskan oleh nilai, dan beberapa set data dapat dikaitkan dengan satu permukaan. |
IDirectDrawSurface7::SetSurfaceDesc Mengatur karakteristik permukaan yang ada. |
IDirectDrawSurface7::Unlock Memberi tahu DirectDraw bahwa manipulasi permukaan langsung selesai. |
IDirectDrawSurface7::UpdateOverlay Memposisikan ulang atau memodifikasi atribut visual permukaan overlay. Permukaan-permukaan ini harus memiliki bendera DDSCAPS_OVERLAY yang ditetapkan. |
IDirectDrawSurface7::UpdateOverlayDisplay Metode IDirectDrawSurface7::UpdateOverlayDisplay saat ini tidak diimplementasikan. |
IDirectDrawSurface7::UpdateOverlayzOrder Mengatur urutan z dari overlay. |
Keterangan
Metode antarmuka IDirectDrawSurface7 dapat diatur ke dalam grup berikut:
Grup | Metode |
---|---|
Mengalokasikan memori | Menginisialisasi, IsLost, dan Memulihkan |
Melampirkan permukaan | AddAttachedSurface, DeleteAttachedSurface, EnumAttachedSurfaces, dan GetAttachedSurface |
BitBltting | Blt, BltBatch, BltFast, dan GetBltStatus |
Tombol warna | GetColorKey dan SetColorKey |
Konteks perangkat | GetDC dan ReleaseDC |
Membalik | Balikkan dan GetFlipStatus |
Mengunci permukaan | Kunci, PageLock, PageUnlock, dan Buka Kunci |
Lain-lain | GetDDInterface |
Overlay | AddOverlayDirtyRect, EnumOverlayZOrders, GetOverlayPosition, SetOverlayPosition, UpdateOverlay, UpdateOverlayDisplay, dan UpdateOverlayZOrder |
Data permukaan privat | FreePrivateData, GetPrivateData, dan SetPrivateData |
Kemampuan surface | GetCaps |
Pengklip permukaan | GetClipper dan SetClipper |
Karakteristik permukaan | ChangeUniquenessValue, GetPixelFormat, GetSurfaceDesc, GetUniquenessValue, dan SetSurfaceDesc |
Palet permukaan | GetPalette dan SetPalette |
Tekstur | GetLOD, GetPriority, SetLOD, dan SetPriority |
Antarmuka IDirectDrawSurface7 memperluas fitur antarmuka versi sebelumnya dengan menawarkan metode yang menawarkan manajemen permukaan yang lebih baik dan kemudahan penggunaan. Banyak metode dalam antarmuka ini menerima parameter yang sedikit berbeda dari rekan-rekan mereka di versi antarmuka sebelumnya. Di mana pun metode antarmuka IDirectDrawSurface3 mungkin menerima struktur DDSURFACEDESC atau antarmuka IDirectDrawSurface3 , metode dalam IDirectDrawSurface7 menerima struktur DDSURFACEDESC2 atau antarmuka IDirectDrawSurface7 , sebagai gantinya.
Gunakan jenis data LPDIRECTDRAWSURFACE, LPDIRECTDRAWSURFACE2, LPDIRECTDRAWSURFACE3, LPDIRECTDRAWSURFACE4, atau LPDIRECTDRAWSURFACE7 untuk mendeklarasikan variabel yang menunjuk ke berbagai antarmuka objek DirectDrawSurface. File header Ddraw.h mendeklarasikan jenis data ini dengan kode berikut:
typedef struct IDirectDrawSurface FAR *LPDIRECTDRAWSURFACE;
typedef struct IDirectDrawSurface2 FAR *LPDIRECTDRAWSURFACE2;
typedef struct IDirectDrawSurface3 FAR *LPDIRECTDRAWSURFACE3;
typedef struct IDirectDrawSurface4 FAR *LPDIRECTDRAWSURFACE4;
typedef struct IDirectDrawSurface7 FAR *LPDIRECTDRAWSURFACE7;
Persyaratan
Target Platform | Windows |
Header | ddraw.h |