Historique des modifications - Message

Message #10950

Sujet: Gravité ? Sans Newton ?


Type Date Auteur Contenu
Création du message 24-11-2012 15:19:25 Logeur
Voici mon code:

#include <irrlicht.h>
using namespace irr;

#ifdef _MSC_VER
#pragma comment(lib, "Irrlicht.lib")
#endif

class MyEventReceiver : public IEventReceiver
{
public:

    MyEventReceiver(scene::ISceneNode* terrain) : Terrain(terrain)
    {
    }

    bool OnEvent(const SEvent& event)
    {
        return false;
    }

private:
    scene::ISceneNode* Terrain;
};

int main()
{

    irr::IrrlichtDevice* device = irr::createDevice(irr::video::EDT_OPENGL, irr::core::dimension2d<irr::u32>(1000,800),32);
    video::IVideoDriver* driver = device->getVideoDriver();
    scene::ISceneManager* scene = device->getSceneManager();
    gui::IGUIEnvironment* env = device->getGUIEnvironment();

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

        irr::SKeyMap keyMap[4];
            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;

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

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


    scene::ITerrainSceneNode* terrain = scene->addTerrainSceneNode("heightmap.png", 0, -1,
        core::vector3df(0.f, 0.f, 0.f),
        core::vector3df(0.f, 0.f, 0.f),
        core::vector3df(60.f, 10.f, 60.f),
        video::SColor ( 255, 255, 255, 255 ), 5, scene::ETPS_17, 4);

    terrain->setMaterialFlag(video::EMF_LIGHTING, false);
    terrain->setMaterialTexture(0, driver->getTexture("terrain-texture.jpg"));
    terrain->setMaterialTexture(1, driver->getTexture("detailmap3.jpg"));
    terrain->setMaterialType(video::EMT_DETAIL_MAP);
    terrain->scaleTexture(1.0f, 20.0f);

    // create triangle selector for the terrain
    scene::ITriangleSelector* selector = scene->createTerrainTriangleSelector(terrain, 0);
    terrain->setTriangleSelector(selector);

    // create collision response animator and attach it to the camera
    scene::ISceneNodeAnimator* anim = scene->createCollisionResponseAnimator(
        selector, camera, core::vector3df(60,100,60),
        core::vector3df(0,0,0),
        core::vector3df(0,50,0));
    selector->drop();
    camera->addAnimator(anim);
    anim->drop();


    MyEventReceiver receiver(terrain);
    device->setEventReceiver(&receiver);

    scene->setAmbientLight(irr::video::SColorf(1.0, 1.0, 1.0,0.0));

    while(device->run())
    if (device->isWindowActive())
    {
        driver->beginScene(true, true, 0 );
        scene->drawAll();
        env->drawAll();
        driver->endScene();
    }

    device->drop();

    return 0;
}

Quand je vise avec ma souris vers le haut, je continue à décoller du sol ;(

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