Hallo erstmal
ich versuch im Moment md3 Dateien in meinem Projekt zu laden. Das Laden an sich klappt und die Textur wird auch auf das Model geladen.
Hier erstmal der Code:
Code:
//
// Homer-Kopf laden
//
IAnimatedMesh *kopf = manager->getMesh("models/players/homer/head.md3");
IAnimatedMeshSceneNode *n_kopf = manager->addAnimatedMeshSceneNode(kopf);
if (n_kopf)
{
n_kopf->setMaterialFlag(EMF_LIGHTING, false);
n_kopf->setMaterialTexture(0, driver->getTexture("models/players/homer/homerskin.tga"));
n_kopf->setPosition(vector3df(0.0f, 0.0f, 0.0f)); // Versuch den Kopf auf die Position (0,0,0) zu bringen
}
//
// Homer-Koerper laden
//
IAnimatedMesh *koerper = manager->getMesh("models/players/homer/upper.md3");
IAnimatedMeshSceneNode *n_koerper = manager->addAnimatedMeshSceneNode(koerper);
if (n_koerper)
{
n_koerper->setMaterialFlag(EMF_LIGHTING, false);
n_koerper->setMaterialTexture(0, driver->getTexture("models/players/homer/homerskin.tga"));
n_koerper->setPosition(vector3df(0.0f, -20.0f, 0.0f)); // bewirkt überhaupt nichts
}
//
// Homer-Beine laden
//
IAnimatedMesh *beine = manager->getMesh("models/players/homer/lower.md3");
IAnimatedMeshSceneNode *n_beine = manager->addAnimatedMeshSceneNode(beine);
if (n_beine)
{
n_beine->setMaterialFlag(EMF_LIGHTING, false);
n_beine->setMaterialTexture(0, driver->getTexture("models/players/homer/homerskin.tga"));
n_beine->setPosition(vector3df(0.0f, -200.0f, 0.0f)); // -200 als test -> keine Auswirkung
}
Das Problem ist, dass alle 3 Teile des Models sich in der gleichen(?) Position befinden.
Weder setFrameLoop noch setPosition funktionieren in diesem Fall.
"Homer" lässt sich nicht bewegen und spielt die Animationen von vorne bis hinten ab!
Habt ihr irgendwelche Ideen, wie man die Position alternativ verändern könnte? Oder gibt es einen Fehler im Quellcode?
Vielen Dank,
methos
_________________
Unmögliches wird sofort erledigt,
Wunder dauern etwas länger!
Using Irrlicht since: 09.06.2007