Hallo,
ich habe ein Problem mit den ITriangleSelector und IMetaTriangleSelector.
Der Codeausschnitt sieht wie folgt aus :
Code:
ITriangleSelector *selector = 0;
IMetaTriangleSelector *meta = 0;
IMeshSceneNode *way = smgr->addMeshSceneNode(smgr->getMesh("data/test.obj"));
selector = smgr->createTriangleSelector(way->getMesh(),way);
way->setTriangleSelector(selector);
way->setScale(vector3df(30.0f,30.0f,30.0f));
IMeshSceneNode *cube = smgr->addCubeSceneNode();
cube->setPosition(vector3df(0,100,0));
ITriangleSelector *s = 0;
IMeshSceneNode *wall = smgr->addCubeSceneNode();
wall->setScale(vector3df(10,1,10));
s = smgr->createTriangleSelector(wall->getMesh(),wall);
wall->setTriangleSelector(s);
if (selector && s)
{
meta->addTriangleSelector(selector);
meta->addTriangleSelector(s);
selector->drop();
s->drop();
}
ISceneNodeAnimatorCollisionResponse *anim = smgr->createCollisionResponseAnimator(meta,cube,vector3df(10,10,10),vector3df(0,-10,0),vector3df(0,0,0));
cube->addAnimator(anim);
Jedoch nachdem das Programm gestartet hat kommt nach kurzer Zeit, die Fehlermeldung von Windows, dass das Programm ein Fehler festgestellt hat und
beendet werden muss.
Aber ich verstehe nicht warum. Wo liegt der Fehler in dem Code?