Historique des modifications - Message

Message #4217

Sujet: Problème lors de l'ajout d'un objet


Type Date Auteur Contenu
Création du message 10-06-2008 06:44:55 samsoft
Bonjour, je suis en train de lire le tuto sur le site du zéro sur le moteur 3d Irrlicht. J'ai vu que le code est un peu "fourre tout" dans la mesure où tout est dans le main.

J'ai donc voulu tester un code qui fait la même chose que dans le tuto en codant "vraiment" en c++ mais ca déconne à l'exécution (xxx.exe à rencontré une erreur et doit fermer...).

Voilà mon code:

main.cpp
#include "Window.h"

using namespace irr;

int main(void)
{
    Window *myWindow = new Window();
    myWindow->addObject();
    myWindow->rend();
    return 0;
}

Window.h
#ifndef WINDOW_H_INCLUDED
#define WINDOW_H_INCLUDED

#include <irrlicht.h>

class Window
{
public:
    Window();
    void addObject();
    void rend();
    ~Window();

private:
    irr::IrrlichtDevice *device;
    irr::video::IVideoDriver *driver;
    irr::scene::ISceneManager *scenegraph;
    irr::scene::IAnimatedMesh *modele;
};

#endif // WINDOW_H_INCLUDED

Window.cpp
#include "Window.h"
#include <iostream>

using namespace irr;
using namespace std;

Window::Window()
{
    IrrlichtDevice *device = createDevice(video::EDT_OPENGL, core::dimension2d<s32>(800, 600), 32, false, true, false, 0);
    video::IVideoDriver* driver = device->getVideoDriver();
    scene::ISceneManager *scenegraph = device->getSceneManager();
}

void Window::addObject()
{
    scene::IAnimatedMesh *modele = scenegraph->getMesh("faerie.md2");
    scene::IAnimatedMeshSceneNode *Nmodele = scenegraph->addAnimatedMeshSceneNode(modele);
    Nmodele->setMaterialFlag(video::EMF_LIGHTING, false);
    Nmodele->setFrameLoop(1, 310);
    Nmodele->setMaterialTexture(0, driver->getTexture("Faerie5.bmp"));
}

void Window::rend()
{
    while(device->run())
    {
        driver->beginScene (true, true, video::SColor(0, 200, 200, 200));
        scenegraph->drawAll();
        driver->endScene();
    }
}

Window::~Window()
{
    device->drop();
}

Si je fourre tout dans le constructeur (en supprimant les fonctions rend et addObject), tout fonctionne sinon ca déconne (comme décrit précédement). Cela prouve que les fichiers existent, aucun problème à ce niveau là (j'ai placé les deux fichiers dans le rep courrant de mon app).

Merci d'avance smile

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
125 invités en ligne
membre en ligne: -
RSS Feed