Historique des modifications - Message

Message #4696

Sujet: geometrie dans l'espace > pas mon truc :'(


Type Date Auteur Contenu
Création du message 28-10-2008 08:40:44 johnplayer
Tiens voilà un code de base :
#include <irrlicht.h>

using namespace irr;
using namespace core;
using namespace scene;
using namespace video;
using namespace io;
using namespace gui;

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

int main()
{
	// create device //
	IrrlichtDevice *device = createDevice(EDT_OPENGL,dimension2d<s32>(640,480),32,false,true,false);
	
	// on déclare les environnements
	IVideoDriver *driver = device->getVideoDriver();
	ISceneManager *smgr = device->getSceneManager();
	IGUIEnvironment *env = device->getGUIEnvironment();

	// brouillard //
	driver->setFog(SColor(255,120,120,120), true, 0, 3000, 0, true, true);

	// couleur ombres //
	smgr->setShadowColor(SColor(150,0,0,0));

	// node de l'univers //
	ISceneNode* univers = 0;

	// fond du décor //
	driver->setTextureCreationFlag(ETCF_CREATE_MIP_MAPS, false);
	smgr->addSkyBoxSceneNode(
		driver->getTexture("irrlicht2_up.jpg"),
		driver->getTexture("irrlicht2_dn.jpg"),
		driver->getTexture("irrlicht2_lf.jpg"),
		driver->getTexture("irrlicht2_rt.jpg"),
		driver->getTexture("irrlicht2_ft.jpg"),
		driver->getTexture("irrlicht2_bk.jpg"));
	driver->setTextureCreationFlag(ETCF_CREATE_MIP_MAPS, true);

	// importation d'un mesh //
	IAnimatedMesh* modele = smgr->getMesh("sydney.md2");//j'importe sydney
                IAnimatedMeshSceneNode* Nmodele = smgr->addAnimatedMeshSceneNode(modele);//je l'ajoute à la scène
                Nmodele->setMaterialFlag(EMF_LIGHTING, false);//je le rend indépendant de la lumière
                Nmodele->setFrameLoop(1, 1); //je bloque l'animation car ça m'énerve
                Nmodele->setMaterialTexture( 0, driver->getTexture("sydney.bmp") );//je lui met une texture
	Nmodele->setPosition(vector3df(0,0,0);//on place sydney à l'origine

	// ajout de la camera //	
	ICameraSceneNode* camera = smgr->addCameraSceneNodeFPS(univers,50.0f,1000.0f,-1,0,0,false,0.0f); //création de la camera
	camera->setPosition(vector3df(100,50,100)); // positionnement de la camera
	camera->setTarget(Nmodele->getPosition()); // on dit à la camera de regarder sydney à l'initialisation

	//////////////////////////
	// disable mouse cursor //
	//////////////////////////

	device->getCursorControl()->setVisible(false);

	int lastFPS = -1;

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


		//////////////////
		// informations //
		//////////////////

		int fps = driver->getFPS();

		if (lastFPS != fps)
		{
		  core::stringw str = L"Mon jeu 3D [";
		  str += driver->getName();
		  str += "] FPS:";
		  str += fps;

		  device->setWindowCaption(str.c_str());
		  lastFPS = fps;
		}
	}
	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
477 invités en ligne
membre en ligne: -
RSS Feed