DirectX Graphics 레퍼런스 Direct3D C/C++ 레퍼런스 인터페이스 IDirect3DVertexDeclaration9 GetDeclaration [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
정점 셰이더의 선언을 얻어온다.
구문
HRESULT GetDeclaration(
D3DVERTEXELEMENT9* pDecl, UINT* pNumElements );
파라미터
- pDecl
- [in, out] 정점 셰이더 선언을 구성하는 정점 요소의 배열. 이것을 위해서(때문에) 애플리케이션측에서 충분한 공간을 할당할 필요가 있다. 정점 요소 배열은 D3DDECL_END 매크로로 종료한다.
- pNumElements
- [in, out] 배열내의 요소의 수. 이것을 위해서(때문에) 애플리케이션측에서 충분한 공간을 할당할 필요가 있다.
반환값
성공했을 경우는,D3D_OK 를 돌려준다.
실패했을 경우의 반환값은 다음대로.
D3DERR_INVALIDCALL 메서드의 호출이 무효이다. 예를 들어, 메서드의 파라미터에 무효인 값이 설정되어 있는 경우 등이다.
주의
요소의 수 pNumElements 에는, 선언을 종료시키는 D3DDECL_END 매크로가 포함된다. 이 때문에, 실제의 요소의 수는, 유효한 정점 요소의 수부터 1 개 많아진다.
최대 256 요소의 정점 선언 배열을 돌려주는 예를 다음에 나타낸다.
// assumes a valid pointer to a vertex declaration object D3DVERTEXELEMENTS9 decl[256]; UINT numElements; HRESULT hr = m_pVertexDeclaration->GetDeclaration( decl, &numElements);