D3DXLoadMeshFromXof
Loads a mesh from an ID3DXFileData object.
HRESULT D3DXLoadMeshFromXof(
LPD3DXFILEDATA pxofMesh,
DWORD Options,
LPDIRECT3DDEVICE9 pDevice,
LPD3DXBUFFER * ppAdjacency,
LPD3DXBUFFER * ppMaterials,
LPD3DXBUFFER * ppEffectInstances,
DWORD * pNumMaterials,
LPD3DXMESH * ppMesh
);
Parameters
- pxofMesh
- [in] Pointer to an ID3DXFileData interface, representing the file data object to load.
- Options
- [out] Combination of one or more flags from the D3DXMESH enumeration, specifying creation options for the mesh.
- pDevice
- [in] Pointer to an IDirect3DDevice9 interface, the device object associated with the mesh.
- ppAdjacency
- [out] Pointer to a buffer that contains adjacency data. The adjacency data contains an array of three DWORDs per face that specify the three neighbors for each face in the mesh. For more information about accessing the buffer, see ID3DXBuffer.
- ppMaterials
- [in, out] Address of a pointer to an ID3DXBuffer interface. When the method returns, this parameter is filled with an array of D3DXMATERIAL structures.
- ppEffectInstances
- [out] Pointer to a buffer containing an array of effect instances, one per attribute group in the returned mesh. An effect instance is a particular instance of state information used to initialize an effect. See D3DXEFFECTINSTANCE. For more information about accessing the buffer, see ID3DXBuffer.
- pNumMaterials
- [in, out] Pointer to the number of D3DXMATERIAL structures in the
ppMaterials array, when the method returns.
- ppMesh
- [out, retval] Address of a pointer to an ID3DXMesh interface, representing the loaded mesh.
Return Values
If the function succeeds, the return value is D3D_OK. If the function fails, the return value can be one of the following: D3DERR_INVALIDCALL.
D3DXERR_INVALIDDATA
E_OUTOFMEMORY
Remarks
For mesh files that do not contain effect instance information, default effect instances will be generated from the material information in the .x file. A default effect instance will have default values that correspond to the members of the D3DMATERIAL9 structure.
The default texture name is also filled in, but is handled differently. The name will be Texture0@Name, which corresponds to an effect variable by the name of "Texture0" with an annotation called "Name." This will contain the string file name for the texture.
Requirements
Header: Declared in D3dx9mesh.h.
See Also
D3DXEFFECTDEFAULT, D3DXEFFECTINSTANCE