Metode IDirect3DVertexBuffer9::Lock (d3d9helper.h)
Mengunci berbagai data vertex dan mendapatkan penunjuk ke memori buffer vertex.
Sintaks
HRESULT Lock(
[in] UINT OffsetToLock,
[in] UINT SizeToLock,
[out] void **ppbData,
[in] DWORD Flags
);
Parameter
[in] OffsetToLock
Jenis: UINT
Offset ke dalam data puncak untuk mengunci, dalam byte. Untuk mengunci seluruh buffer vertex, tentukan 0 untuk kedua parameter, SizeToLock dan OffsetToLock.
[in] SizeToLock
Jenis: UINT
Ukuran data puncak untuk dikunci, dalam byte. Untuk mengunci seluruh buffer vertex, tentukan 0 untuk kedua parameter, SizeToLock dan OffsetToLock.
[out] ppbData
Jenis: VOID**
VOID* pointer ke buffer memori yang berisi data vertex yang dikembalikan.
[in] Flags
Jenis: DWORD
Kombinasi bendera penguncian nol atau lebih yang menjelaskan jenis kunci yang akan dilakukan. Untuk metode ini, bendera yang valid adalah:
- D3DLOCK_DISCARD
- D3DLOCK_NO_DIRTY_UPDATE
- D3DLOCK_NOSYSLOCK
- D3DLOCK_READONLY
- D3DLOCK_NOOVERWRITE
Mengembalikan nilai
Jenis: HRESULT
Jika metode berhasil, nilai yang dikembalikan adalah D3D_OK. Jika metode gagal, nilai yang dikembalikan dapat D3DERR_INVALIDCALL.
Keterangan
Sebagai aturan umum, jangan tahan kunci di lebih dari satu bingkai. Saat bekerja dengan buffer vertex, Anda diizinkan untuk melakukan beberapa panggilan kunci; namun, Anda harus memastikan bahwa jumlah panggilan kunci cocok dengan jumlah panggilan buka kunci. Panggilan DrawPrimitive tidak akan berhasil dengan jumlah kunci yang luar biasa pada buffer vertex yang saat ini ditetapkan.
Bendera D3DLOCK_DISCARD dan D3DLOCK_NOOVERWRITE hanya valid pada buffer yang dibuat dengan D3DUSAGE_DYNAMIC.
Untuk informasi tentang menggunakan D3DLOCK_DISCARD atau D3DLOCK_NOOVERWRITE dengan IDirect3DVertexBuffer9::Lock, lihat Menggunakan Puncak Dinamis dan Buffer Indeks.
Persyaratan
Target Platform | Windows |
Header | d3d9helper.h (termasuk D3D9.h) |
Pustaka | D3D9.lib |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk