Platform SDK: DirectX |
IDirect3DVertexBuffer7::Lock メソッドは、頂点バッファをロックして、頂点バッファ メモリへのポインタを取得する。
HRESULT Lock( DWORD dwFlags, LPVOID* lplpData, LPDWORD lpdwSize );
成功すれば D3D_OK を返す。
失敗すれば、次のいずれかの値を返す。
D3DERR_VERTEXBUFFEROPTIMIZED |
DDERR_INVALIDPARAMS |
DDERR_OUTOFMEMORY |
DDERR_SURFACEBUSY |
DDERR_SURFACELOST |
頂点バッファをロックした後は、IDirect3DVertexBuffer7::Unlock を呼び出すまでこのメモリにアクセスできる。
ロックされた頂点バッファからレンダリングすることはできない。ロックされた頂点バッファを使用して IDirect3DDevice7::DrawIndexedPrimitiveVB または IDirect3DDevice7::DrawPrimitiveVB メソッドを呼び出すと失敗し、D3DERR_VERTEXBUFFERLOCKED が返される。
このメソッドは、IDirect3DVertexBuffer7::Unlock メソッドを呼び出すまで、Win16Mutex をホールドさせることがしばしばある。GUI デバッガは、Win16Mutex がホールドされている間は動作しない。
Windows NT/2000 :Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
バージョン :DirectX 7.0 が必要。
ヘッダー : d3d.h で宣言。