|
发表于 2010-10-12 19:54:00
|
显示全部楼层
Re:求助DX读取.Mesh格式的文件.
LPD3DXBUFFER m_b,adj_b;
LPD3DXMATERIAL m;
D3DXLoadMeshFromX(filename, D3DXMESH_32BIT | D3DXMESH_MANAGED, d3d, &adj_b, &m_b, 0, (DWORD *)&tex_num, &mesh); //d3d是LPDIRECT3DDEVICE9
m = (LPD3DXMATERIAL)m_b->GetBufferPointer();
tex = new LPDIRECT3DTEXTURE9[tex_num];
for(int a=0; a<tex_num; a++)
D3DXCreateTextureFromFile(d3d, (LPCSTR)m[a].pTextureFilename,&tex[a]);
mesh->OptimizeInplace(D3DXMESHOPT_COMPACT | D3DXMESHOPT_ATTRSORT | D3DXMESHOPT_VERTEXCACHE, (DWORD *)adj_b->GetBufferPointer(),(DWORD *)adj_b->GetBufferPointer(), 0, 0);
D3DXComputeNormals(mesh, (DWORD *)adj_b->GetBufferPointer());
m_b->Release();
adj_b->Release();
|
|