Hi,
ich schreibe mir derzeit eine Klasse, die mithilfe der D3DX-Bibo ein X-Modell lädt und alle Materialien, den Vertex- u. IndexBuffer, Texturen (...) ausließt und alles mit der TB und einigen eigenen Strukturen abspeichert (also ich verwende tbVertexBuffer den TextureManager ....), dass ich dannach direkten Zugriff auf alle Informationen habe.
Ich komm auch mit allem ziehmlich gut klar. Mein Problem ist jetzt allerdings, dass ich ja pro Material die Anzahl der Dreiecke und Vertizes brauch sowie den ersten Vertex und den kleinsten Index brauch um den "Gültigkeitsbereich des Materials" festzulegen.
Alle Angaben bis auf den kleinsten Index hab ich mit GetAttributeTable aus dem XMesh geladen.
(GetAttributeTable gibt folgende struktur zurück:
|
Quellcode
|
1
2
3
4
5
6
7
|
typedef struct _D3DXATTRIBUTERANGE {
DWORD AttribId;
DWORD FaceStart;
DWORD FaceCount;
DWORD VertexStart;
DWORD VertexCount;
} D3DXATTRIBUTERANGE;
|
)
den Start Index habe ich durch FaceCount*3 ermittelt (stimmt das?).
Nur wie krieg ich jetzt den kleinsten Index?? Ich hab keine Funktion gefunden mit dem ich diesen ermitteln kann.