DirectX Graphics 레퍼런스 Direct3D C/C++ 레퍼런스 인터페이스 IDirect3DIndexBuffer9 Lock   [목차열람] [주소복사] [슬롯비우기]
IDirect3DIndexBuffer9::Lock 메서드
 
Microsoft DirectX 9.0

IDirect3DIndexBuffer9::Lock 메서드


인덱스 데이터의 범위를 잠그어, 인덱스 버퍼 메모리의 포인터를 얻어온다.

구문

HRESULT Lock(      

    UINT OffsetToLock,     UINT SizeToLock,     VOID **ppbData,     DWORD Flags );

파라미터

OffsetToLock
[in] 잠그는 인덱스 데이터에의 오프셋(offset) (바이트 단위). 인덱스 버퍼 전체를 잠그려면 ,SizeToLockOffsetToLock 의 양쪽 모두의 파라미터에 0 을 지정한다.
SizeToLock
[in] 잠그는 인덱스 데이터의 사이즈 (바이트 단위). 인덱스 버퍼 전체를 잠그려면 ,SizeToLockOffsetToLock 의 양쪽 모두의 파라미터에 0 을 지정한다.
ppbData
[out] 돌려주어진 인덱스 데이터를 포함한 메모리 버퍼에의 VOID* 포인터.
Flags
[in] 실행하는 잠금의 종류를 기술하는, 0 개 이상의 잠금 플래그의 편성. 이 메서드에 사용할 수 있는 플래그는 다음대로.
  • D3DLOCK_DISCARD
  • D3DLOCK_NO_DIRTY_UPDATE
  • D3DLOCK_NO_SYSLOCK
  • D3DLOCK_READONLY
  • D3DLOCK_NOOVERWRITE

플래그에 대해서는, 「D3DLOCK 」를 참조할것.

반환값

성공했을 경우는,D3D_OK 를 돌려준다.

실패했을 경우는,D3DERR_INVALIDCALL 를 돌려준다.



주의

인덱스 버퍼의 처리에서는, 잠금의 호출을 여러 차례 실시할 수 있다. 다만, 잠금의 호출 회수와 언락의 호출 회수가 일치하고 있을 필요가 있다. 현재 설정해 있는 인덱스 버퍼로 잠금 카운트가 남아 있는 경우,IDirect3DDevice9::DrawPrimitive 의 호출은 실패한다.

D3DLOCK_DISCARD 및 D3DLOCK_NOOVERWRITE 플래그는, D3DUSAGE_DYNAMIC 로 생성 된 버퍼 에 대해서만 유효하다.

D3DLOCK_DISCARD 및 D3DLOCK_NOOVERWRITE. 의 사용법에 대해서는, 「프로그래밍의 힌트」를 참조할것.

참조

IDirect3DIndexBuffer9::Unlock


© 2002 Microsoft Corporation. All rights reserved.
↑TOP