Code: Alles auswählen
aiString ColormapFile;
if(AI_SUCCESS==aiMaterial->Get(AI_MATKEY_TEXTURE_DIFFUSE(0), ColormapFile))
{
// blub
map_Kd müsste ja eine DiffuseMap sein.# Blender3D MTL File: Spider0.blend
# Material Count: 1
newmtl Material_spider0_color.tga.png
Ns 96.078431
Ka 0.000000 0.000000 0.000000
Kd 0.640000 0.640000 0.640000
Ks 0.500000 0.500000 0.500000
Ni 1.000000
d 1.000000
illum 2
map_Kd Spider0_colormap.png
Wenn ich den Assimp Viewer benutze, wird auch alles korrekt geladen und die Textur erscheint unter DiffuseMap1 genau wie die Textur von einem anderen Modell (Der .x Zwerg aus den AssimpTestmodels). Komisch ist halt, dass die Textur vom Zwerg geladen wird, die von der Spinne aber nicht. Ich meine auch, dass früher mal alles problemlos funktioniert hätte, aber das kann ich halt jetzt nicht mehr testen.
Ich habe gerade eben nochmal Assimp aktualisiert und komplett neu kompiliert, ebenso mein Projekt, aber es geht nicht. Ahja, Assimp erzeugt beim kompilieren eine Menge Warnungen, will die nicht mal jemand beheben?^^
Die Sache ist eben, ich möchte Materialien gut auslesen können und nicht einfach zig Sachen prüfen ob diese vorhanden sind, oder nicht. Ich hab in der Doku nicht einmal eine Funktion gefunden, um zu ermitteln, wie viele Texturen es wovon gibt.
Die Frage ist also: Wie lese ich die Textur korrekt aus, und wie kann ich ansonsten am besten ein AssimpMaterial laden?