Функция D3DXLoadMeshFromX
Загружает сетку из X-файла DirectX.
Синтаксис
HRESULT D3DXLoadMeshFromX(
_In_ LPCTSTR pFilename,
_In_ DWORD Options,
_In_ LPDIRECT3DDEVICE9 pD3DDevice,
_Out_ LPD3DXBUFFER *ppAdjacency,
_Out_ LPD3DXBUFFER *ppMaterials,
_Out_ LPD3DXBUFFER *ppEffectInstances,
_Out_ DWORD *pNumMaterials,
_Out_ LPD3DXMESH *ppMesh
);
Параметры
-
pFilename [in]
-
Тип: LPCTSTR
Указатель на строку, указывающую имя файла. Если для параметров компилятора требуется Юникод, тип данных LPCTSTR разрешается в LPCWSTR. В противном случае строковый тип данных разрешается в LPCSTR. См. заметки.
-
Параметры [в]
-
Тип: DWORD
Сочетание одного или нескольких флагов из перечисления D3DXMESH , которое задает параметры создания для сетки.
-
pD3DDevice [in]
-
Тип: LPDIRECT3DDEVICE9
Указатель на интерфейс IDirect3DDevice9 , объект устройства, связанный с сеткой.
-
ppAdjacency [out]
-
Тип: LPD3DXBUFFER*
Указатель на буфер, содержащий данные о соседствах. Данные смежности содержат массив из трех DWORD на каждое лицо, в котором указываются три соседя для каждого лица в сетке. Дополнительные сведения о доступе к буферу см. в разделе ID3DXBuffer.
-
ppMaterials [out]
-
Тип: LPD3DXBUFFER*
Указатель на буфер, содержащий данные материалов. Буфер содержит массив структур D3DXMATERIAL , содержащих сведения из файла DirectX. Дополнительные сведения о доступе к буферу см. в разделе ID3DXBuffer.
-
ppEffectInstances [out]
-
Тип: LPD3DXBUFFER*
Указатель на буфер, содержащий массив экземпляров эффекта, по одному на группу атрибутов в возвращаемой сетке. Экземпляр эффекта — это конкретный экземпляр сведений о состоянии, используемых для инициализации эффекта. См . раздел D3DXEFFECTINSTANCE. Дополнительные сведения о доступе к буферу см. в разделе ID3DXBuffer.
-
pNumMaterials [out]
-
Тип: DWORD*
Указатель на количество структур D3DXMATERIAL в массиве ppMaterials при возврате метода.
-
ppMesh [out]
-
Тип: LPD3DXMESH*
Адрес указателя на интерфейс ID3DXMesh , представляющий загруженную сетку.
Возвращаемое значение
Тип: HRESULT
Если функция выполняется успешно, возвращаемое значение будет D3D_OK. Если функция завершается ошибкой, возвращаемое значение может быть одним из следующих значений: D3DERR_INVALIDCALL E_OUTOFMEMORY.
Комментарии
Параметр компилятора также определяет версию функции. Если определен Юникод, вызов функции разрешается в D3DXLoadMeshFromXW. В противном случае вызов функции разрешается в D3DXLoadMeshFromXA, так как используются строки ANSI.
Все сетки в файле будут сворачиваться в одну выходную сетку. Если файл содержит иерархию кадров, все преобразования будут применены к сетке.
Для файлов сетки, которые не содержат сведения об экземпляре эффекта, экземпляры эффектов по умолчанию создаются из сведений о материалах в X-файле. Экземпляр эффекта по умолчанию будет иметь значения по умолчанию, соответствующие членам структуры D3DMATERIAL9 .
Имя текстуры по умолчанию также заполняется, но обрабатывается иначе. Имя будет Texture0@Name, которое соответствует переменной эффекта с именем Texture0 с заметкой "Name". Он будет содержать строковое имя файла текстуры.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел