#1 

26-11-2012 21:21:46

Logeur
Membres
Avatar de Logeur
Date d'inscription:
Messages: 61
IP: 5.48.75.208
Courriel

Bonsoir à tous,

Je rencontre un certain problème.
Après avoir fait tout les tests avec une heightmap tout marche très bien. Mais dès que je passe avec ma carte là je tombe sur ce code d'erreur :

E:\\IRR\\Irrlicht 1.8\\Projet de base\\main.cpp|52|error: 'class irr::scene::IMeshSceneNode' has no member named 'addCameraSceneNodeFPS'|


Je met le code au cas ou smile

#include <irrlicht.h>
#include <iostream>

using namespace std;
using namespace irr;

int main()
{
    IrrlichtDevice *device = createDevice(video::EDT_OPENGL, core::dimension2d<u32>(1000,800), 32);
    video::IVideoDriver *driver = device -> getVideoDriver();
    scene::ISceneManager *sceneManager = device -> getSceneManager();


    device->setWindowCaption(L"Fast Jump [INDEV]");
    device->getCursorControl()->setVisible(false);


    scene::IAnimatedMesh *map = sceneManager -> getMesh("mapFJ.obj");
    scene::IMeshSceneNode *scene = sceneManager -> addMeshSceneNode(map -> getMesh(0));

    scene -> setMaterialFlag(video::EMF_LIGHTING,false);
    scene -> setMaterialTexture(0, driver -> getTexture("terrain-texture.jpg"));

    sceneManager -> getMeshManipulator() -> makePlanarTextureMapping(map -> getMesh(0), 0.004f);

    scene::ITriangleSelector *selector = 0;
    if (scene)
    {
        selector = sceneManager->createOctTreeTriangleSelector(map->getMesh(0), scene);
        scene->setTriangleSelector(selector);
        selector->drop();
    }

    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 = EKA_JUMP_UP;
            keyMap[4].KeyCode = KEY_SPACE;

    scene::ICameraSceneNode* camera = scene-> addCameraSceneNodeFPS(0,100.0f,2.5f, -1, keyMap, 5, true, 0.5f);

    camera->setPosition(core::vector3df(2700*2,555*2,2600*2));
    camera->setTarget(core::vector3df(2397*2,343*2,2700*2));
    camera->setFarValue(42000.0f);


    scene::ISceneNodeAnimator *anim = sceneManager->createCollisionResponseAnimator(selector, camera, core::vector3df(60,100,60), core::vector3df(0,-1,0), core::vector3df(0,50,0));
    camera->addAnimator(anim);
    anim->drop();


    while(device -> run())
    {
        driver -> beginScene(true, true, video::SColor(255,90,146,177));
        sceneManager -> drawAll();
        driver->endScene();
    }
    device -> drop();
    return 0;
}

Merci de votre aide


Hors ligne


#2 

27-11-2012 08:45:41

johnplayer
Membres
Avatar de johnplayer
Date d'inscription:
Messages: 431
IP: 83.192.80.19
Courriel

Il ne peut pas etre plus explicite tu mets à la ligne 52:
scene-> addCameraSceneNodeFPS(0,100.0f,2.5f, -1, keyMap, 5, true, 0.5f);
Or scene est déclaré tel qui suit:
scene::IMeshSceneNode *scene = sceneManager -> addMeshSceneNode(map -> getMesh(0));

Tu dois faire:
sceneManager->addCameraSceneNodeFPS(0,100.0f,2.5f, -1, keyMap, 5, true, 0.5f);
car addcameraSceneNodeFPS est une fonction de IScenemanager.

Sinon ça fait vraiment bizarre tes espaces autour des "->". ça rend le code moins lisible je trouve car "->" est un accesseur pas un opérateur donc pas d'espaces autour. Vu que tu as code::Block, il te suffit de passer le curseur au-dessus d'un terme pour en connaitre sa déclaration.


core i7 4970K @ 4GHz - 32GB ddr3 19200(2400MHz) - ssd samsung 840 evo 250GB - GTX1080Ti (4K) - Cooler master storm stryker blanc.
"L'alcool, c'est comme Activia, c'est actif à l'intérieur et ça se voit à l'extérieur."

Hors ligne


#3 

27-11-2012 16:17:15

Logeur
Membres
Avatar de Logeur
Date d'inscription:
Messages: 61
IP: 5.48.75.208
Courriel

Merci wink
Voilà ce qui arrive quand on dev après une dure journée de travail xD


Hors ligne


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
117 invités en ligne
membre en ligne: -
RSS Feed