|
Par
Kevin Leonhart
Mise à jour : 23/03/2011
1 621 visites depuis 7 jours,
dont 60 sur ce chapitre
classé 80/786
|





).


).1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | #include <IRR/irrlicht.h> int main(void) { //Device, driver et graphe de scene. irr::IrrlichtDevice* device = irr::createDevice(irr::video::EDT_OPENGL, irr::core::dimension2d<irr::u32>(800,800),32,false,false,false); irr::video::IVideoDriver* driver = device->getVideoDriver (); irr::scene::ISceneManager *sceneManager = device->getSceneManager (); //On rend invisible le curseur. device->getCursorControl ()-> setVisible (false); //La camera irr::SKeyMap keyMap[5]; keyMap[0].Action = irr::EKA_MOVE_FORWARD; keyMap[0].KeyCode = irr::KEY_KEY_Z; keyMap[1].Action = irr::EKA_MOVE_BACKWARD; keyMap[1].KeyCode = irr::KEY_KEY_S; keyMap[2].Action = irr::EKA_STRAFE_LEFT; keyMap[2].KeyCode = irr::KEY_KEY_Q; keyMap[3].Action = irr::EKA_STRAFE_RIGHT; keyMap[3].KeyCode = irr::KEY_KEY_D; keyMap[4].Action = irr::EKA_JUMP_UP; keyMap[4].KeyCode = irr::KEY_SPACE; irr::scene::ICameraSceneNode *camera; camera = sceneManager->addCameraSceneNodeFPS (0,100.0f,20.0f, -1, keyMap, 5, false, 0.4); //On charge le mesh irr::scene::IAnimatedMesh *mesh = sceneManager->getMesh("nom_du_fichier.obj"); //On l'associe a un noeud de la scene irr::scene::IAnimatedMeshSceneNode *meshNode = sceneManager->addAnimatedMeshSceneNode(mesh); //On specifie sa texture meshNode->setMaterialTexture(0, driver->getTexture("texture_du_modele.png")); //On rend le mesh insensible a la lumiere meshNode->setMaterialFlag(irr::video::EMF_LIGHTING, false); //La boucle de rendu while (device->run()) { driver->beginScene(true, true, irr::video::SColor(0,200,200,200)); sceneManager->drawAll (); driver->endScene (); } device->drop(); return 0; } |







