Metode IDirect3DIndexBuffer9::Lock (d3d9helper.h)

Mengunci rentang data indeks dan mendapatkan penunjuk ke memori buffer indeks.

Sintaks

HRESULT Lock(
  [in]  UINT  OffsetToLock,
  [in]  UINT  SizeToLock,
  [out] void  **ppbData,
  [in]  DWORD Flags
);

Parameter

[in] OffsetToLock

Jenis: UINT

Offset ke dalam data indeks untuk mengunci, dalam byte. Kunci seluruh buffer indeks dengan menentukan 0 untuk kedua parameter, SizeToLock dan OffsetToLock.

[in] SizeToLock

Jenis: UINT

Ukuran data indeks untuk dikunci, dalam byte. Kunci seluruh buffer indeks dengan menentukan 0 untuk kedua parameter, SizeToLock dan OffsetToLock.

[out] ppbData

Jenis: VOID**

VOID* penunjuk ke buffer memori yang berisi data indeks 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
Untuk deskripsi bendera, lihat D3DLOCK.

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 indeks, Anda diizinkan untuk melakukan beberapa panggilan kunci. Namun, Anda harus memastikan bahwa jumlah panggilan kunci cocok dengan jumlah panggilan buka kunci. Panggilan IDirect3DDevice9::D rawIndexedPrimitive tidak akan berhasil dengan jumlah kunci yang luar biasa pada buffer indeks yang saat ini ditetapkan.

Bendera D3DLOCK_DISCARD dan D3DLOCK_NOOVERWRITE hanya valid pada buffer yang dibuat dengan D3DUSAGE_DYNAMIC.

Lihat Tips Pemrograman (Direct3D 9) untuk informasi tentang menggunakan D3DLOCK_DISCARD atau D3DLOCK_NOOVERWRITE.

Persyaratan

   
Target Platform Windows
Header d3d9helper.h (termasuk D3D9.h)
Pustaka D3D9.lib

Lihat juga

IDirect3DIndexBuffer9

IDirect3DIndexBuffer9::Unlock

Buffer Indeks (Direct3D 9)