다음을 통해 공유


D3DXLoadMeshFromXInMemory 함수

메모리에서 메시를 로드합니다.

구문

HRESULT D3DXLoadMeshFromXInMemory(
  _In_  LPCVOID           Memory,
  _In_  DWORD             SizeOfMemory,
  _Out_ DWORD             Options,
  _In_  LPDIRECT3DDEVICE9 pD3DDevice,
  _Out_ LPD3DXBUFFER      *ppAdjacency,
  _Out_ LPD3DXBUFFER      *ppMaterials,
  _Out_ LPD3DXBUFFER      *ppEffectInstances,
  _Out_ DWORD             *pNumMaterials,
  _Out_ LPD3DXMESH        *ppMesh
);

매개 변수

메모리 [in]

형식: LPCVOID

메시 데이터가 포함된 메모리 버퍼에 대한 포인터입니다.

SizeOfMemory [in]

형식: DWORD

메모리에 있는 파일의 크기(바이트)입니다.

옵션 [out]

형식: DWORD

메시에 대한 만들기 옵션을 지정하는 D3DXMESH 열거형에서 하나 이상의 플래그를 조합합니다.

pD3DDevice [in]

형식: LPDIRECT3DDEVICE9

메시와 연결된 디바이스 개체인 IDirect3DDevice9 인터페이스에 대한 포인터입니다.

ppAdjacency [out]

형식: LPD3DXBUFFER*

ID3DXBuffer 인터페이스에 대한 포인터의 주소입니다. 메서드가 반환되면 이 매개 변수는 메시의 각 면에 대해 세 개의 인접 항목을 지정하는 얼굴당 3개의 DWORD 배열로 채워집니다.

ppMaterials [out]

형식: LPD3DXBUFFER*

ID3DXBuffer 인터페이스에 대한 포인터의 주소입니다. 이 메서드가 반환되면 이 매개 변수는 DirectX 파일에 저장된 정보를 포함하는 D3DXMATERIAL 구조의 배열로 채워집니다.

ppEffectInstances [out]

형식: LPD3DXBUFFER*

반환된 메시의 특성 그룹당 하나씩 효과 인스턴스의 배열을 포함하는 버퍼에 대한 포인터입니다. 효과 instance 효과를 초기화하는 데 사용되는 상태 정보의 특정 instance. D3DXEFFECTINSTANCE를 참조하세요. 버퍼에 액세스하는 방법에 대한 자세한 내용은 ID3DXBuffer를 참조하세요.

pNumMaterials [out]

형식: DWORD*

메서드가 반환되는 ppMaterials 배열의 D3DXMATERIAL 구조체 수에 대한 포인터입니다.

ppMesh [out]

형식: LPD3DXMESH*

로드된 메시를 나타내는 ID3DXMesh 인터페이스에 대한 포인터의 주소입니다.

반환 값

형식: HRESULT

함수가 성공하면 반환 값이 D3D_OK. 함수가 실패하면 반환 값은 D3DERR_INVALIDCALL, E_OUTOFMEMORY 값 중 하나일 수 있습니다.

설명

파일의 모든 메시는 하나의 출력 메시로 축소됩니다. 파일에 프레임 계층 구조가 포함되어 있으면 모든 변환이 메시에 적용됩니다.

효과 instance 정보를 포함하지 않는 메시 파일의 경우 .x 파일의 재질 정보에서 기본 효과 인스턴스가 생성됩니다. instance 기본 효과에는 D3DMATERIAL9 구조체의 멤버에 해당하는 기본값이 있습니다.

기본 텍스처 이름도 채워지지만 다르게 처리됩니다. 이름은 "Name"이라는 주석이 있는 "Texture0"의 이름으로 효과 변수에 해당하는 Texture0@Name. 여기에는 텍스처의 문자열 파일 이름이 포함됩니다.

요구 사항

요구 사항
헤더
D3DX9Mesh.h
라이브러리
D3dx9.lib

추가 정보

메시 함수

D3DXEFFECTDEFAULT

D3DXEFFECTINSTANCE