Historique des modifications - Message

Message #10961

Sujet: Gravité ? Sans Newton ?


Type Date Auteur Contenu
Création du message 27-11-2012 18:35:14 johnplayer
De grandes chances qu'il n'ait pas réussi à charger le mesh. Tu ne créé pas le selector si le node "scene" n'est pas créé mais pourtant tu l'autorises à être paramètré?!
Essaies ça déjà:

Code c++ :


#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::ITriangleSelector *selector = NULL;
    if (scene)
    {
        scene -> setMaterialFlag(video::EMF_LIGHTING,false);
        scene -> setMaterialTexture(0, driver -> getTexture("terrain-texture.jpg"));
        sceneManager -> getMeshManipulator() -> makePlanarTextureMapping(map -> getMesh(0), 0.4f);
        selector = sceneManager->createOctTreeTriangleSelector(map->getMesh(0), scene);
        if(selector)
       {
            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 = sceneManager-> addCameraSceneNodeFPS(0,100.0f,0.025f, -1, keyMap, 5, true, 10.5f);
    camera->setPosition(core::vector3df(0,100,0));
    camera->setTarget(core::vector3df(0,0,0));
    camera->setFarValue(42000.0f);

    if(selector)
    {
        scene::ISceneNodeAnimator *anim = sceneManager->createCollisionResponseAnimator(selector, camera, core::vector3df(60,100,60), core::vector3df(0,-100,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;
}

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