#include <irrlicht.h>
#include <iostream>
#include <vector>
#include "eventDebugger.h"
#define HEIGHT 300
#define WEIGHT 300
using namespace irr;
int main(int argc, char* argv[])
{
int ref = 1;
int NombreMeshs = 2;
video::E_DRIVER_TYPE driverType = video::EDT_OPENGL;
scene::ICameraSceneNode * camera;
scene::IAnimatedMeshMD2** modele;
scene::IAnimatedMeshSceneNode** Nmodele;
IrrlichtDevice* device = createDevice(driverType, core::dimension2d<u32>(WEIGHT, HEIGHT),32,false);
if (device == 0) return 1;
device->setWindowCaption(L"Orion Engine");
video::IVideoDriver* driver = device->getVideoDriver();
scene::ISceneManager* smgr = device->getSceneManager();
modele = new scene::IAnimatedMeshMD2*[NombreMeshs];
Nmodele = new scene::IAnimatedMeshSceneNode*[NombreMeshs];
for(int i=0;i<=NombreMeshs;i++)
{
modele[i] = (irr::scene::IAnimatedMeshMD2*)smgr->getMesh("../../media/Models/cloud/cloud.md2");
if (!modele[i])
{
device->drop();
return 1;
}
Nmodele[i] = smgr->addAnimatedMeshSceneNode( modele[i] );
}
camera = smgr->addCameraSceneNode(0,core::vector3df(0,0,0),core::vector3df(0,0,0));
CEventDebugger debug(camera,Nmodele);
device->setEventReceiver(&debug);
while (device->run())
{
if (device->isWindowActive())
{
driver->beginScene(true, true, video::SColor(0,200,200,200));
device->getGUIEnvironment()->drawAll();
smgr->drawAll();
debug.majPosCam();
if(ref == 1){ fprintf(stderr,"yoyo :"); Nmodele[1]->removeAll(); modele[1] = NULL; Nmodele[1] = NULL; ref = 0; }
}
driver->endScene();
}
device->drop();
return 0;
}