conv3ds.exe ist Bestandteil des
DirectX SDKs, muss wenn ich mich recht erinnere jedoch explizit mitinstalliert werden. Es gab auch einige Versionen des SDKs, wo es nicht dabei war... Wie auch immer, im Full
SDK sollte es drin sein, und bei den "Extras", die man auch auf der
DirectX-
SDK-Downloadseite bekommt, sind auch noch Plugins für 3dsmr3 etc.
Was die Aufrufe angeht: Daher mein Tip, in die Samples bzw. in die Common Files zu gucken ;c)
Ist hier von
DirectX 9, aber ich glaube, da hat sich nicht so viel geändert...
Code:
HRESULT D3DXLoadMeshFromX( LPCTSTR pFilename,
DWORD Options,
LPDIRECT3DDEVICE9 pDevice,
LPD3DXBUFFER* ppAdjacency,
LPD3DXBUFFER* ppMaterials,
LPD3DXBUFFER* ppEffectInstances,
DWORD* pNumMaterials,
LPD3DXMESH* ppMesh
);
pFileName ist hoffentlich klar, und pDevice hoffentlich auch.
Die drei Puffer werden von der Funktion erzeugt, und du musst lediglich die Zeiger zur Verfügung stellen (also vom Typ Zeiger auf Zeiger auf ID3DXBuffer).
pNumMaterials, da übergibst du den Zeiger auf ein DWORD, das ist also ein Ausgabeparameter, der die Anzahl der Materials in ppMaterials angibt.
ppMesh ist das eigentlich Mesh-Teil, was du am Ende haben willst. Auch hier übergibst du lediglich den Zeiger auf einen ID3DXMesh-Zeiger.
Noch Fragen?
Dann schau dir bitte die Samples und die Common Files aus dem
SDK in aller Ruhe an. Wenn danach immer noch Fragen sind, versuche ich natürlich trotzdem, sie zu beantworten, aber du siehst schon an der Komplexität des Ladens, dass das kein Thema ist, wo man so leicht eine fertige Lösung hat, da musst du dich selbst wenn du dich einigermaßen mit sowas auskennst einige Zeit mit beschäftigen...