Hallo,
ich habe ein Testlevel erstellt (große Platte) und als irr Datei abgespeichert. In diesem Testlevel erstelle ich dann ein Modell über der Platte (Sydney). Das ganze sieht dann etwa so aus:
Code:
IrrlichtDevice* device = createDevice(video::EDT_OPENGL, core::dimension2d<s32>(800, 600), 32, false, false,false,&receiver);
if (device == 0) return 1; // could not create selected driver.
video::IVideoDriver* driver = device->getVideoDriver();
scene::ISceneManager* smgr = device->getSceneManager();
// load the scene
smgr->loadScene("D:\testlevel.irr");
//Sydney reinsetzen
scene::IAnimatedMesh* mesh = smgr->getMesh("d:\sydney.md2");
scene::IAnimatedMeshSceneNode* node = smgr->addAnimatedMeshSceneNode(mesh, 0, -1, core::vector3d<f32>(25, 25, 25));
if (node)
{
node->setMaterialFlag(video::EMF_LIGHTING, false);
node->setFrameLoop(0, 310);
node->setMaterialTexture( 0, driver->getTexture("meshes/sydney/sydney.bmp") );
}
//kamera
scene::ICameraSceneNode *camera = smgr->addCameraSceneNode();
camera->setParent(node);
camera->setPosition(-50, 60, 0);
camera->setTarget(node->getPosition());
Nun versuche ich schon seit einiger Zeit Kollisionserkennung (Figur reagiert auf Wände, Untergrund etc.) in die Sache zu bringen. Entweder fällt das Modell komplett durch den Boden in die Unendlichkeit der Engine oder es passiert garnichts. Habe die ganzen TriangleSelectors durchprobiert und auch einige andere Sachen probiert komme aber einfach nicht weiter.
Kann mir jemand einen Tipp geben wie ich das mit der Kollisionerkennung machen muss?
Schonmal dankeschön im vorraus
Grüße, Florian