Historique des modifications - Message

Message #7969

Sujet: Environement 3D


Type Date Auteur Contenu
Dernière modification 17-02-2010 13:21:29 Ilovechocolat
J'ai réussit a modifier une image pixel par pixel, il me faut encore l'algorithme de coloration et après ça devrait être bon

[EDIT] help, je suis paumé, j'ai un code qui devrais marcher mais qui m'affiche écran noir :

Code c++ :

#include <IRR/irrlicht.h>

int main()
{
	irr::IrrlichtDevice *device = irr::createDevice(irr::video::EDT_OPENGL, irr::core::dimension2d<irr::u32>(640, 480));
	if (device == 0)
		return 1;
	irr::video::IVideoDriver* driver = device->getVideoDriver();
	irr::scene::ISceneManager* smgr = device->getSceneManager();
	device->getFileSystem()->addZipFileArchive("map-20kdm2.pk3");
	irr::scene::IAnimatedMesh* mesh = smgr->getMesh("20kdm2.bsp");
	irr::scene::ISceneNode* node = 0;

	if (mesh)
		node = smgr->addOctreeSceneNode(mesh->getMesh(0), 0, -1, 1024);
	if (node)
		node->setPosition(irr::core::vector3df(-1300,-144,-1249));
	smgr->addCameraSceneNode(0, irr::core::vector3df(90,90,0), irr::core::vector3df(0,0,0));
	device->getCursorControl()->setVisible(false);
	int lastFPS = -1;

	irr::video::ITexture* blueView = driver->addRenderTargetTexture(driver->getScreenSize(), "blue", driver->getColorFormat());

	while(device->run())
	{
		driver->beginScene(true, true, 0);
		driver->setRenderTarget(blueView, true, true, irr::video::SColor(0,0,0,255));
		smgr->drawAll();
		driver->draw2DImage(blueView, irr::core::position2d<irr::s32>(0, 0));
		driver->endScene();

		int fps = driver->getFPS();

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

			device->setWindowCaption(str.c_str());
			lastFPS = fps;
		}
	}
	device->drop();
	return 0;
}


et dans la console, Irrlicht me dit "unsupported texture format", ça vient de cette ligne :

Code c++ :

irr::video::ITexture* blueView = driver->addRenderTargetTexture(driver->getScreenSize(), "blue", driver->getColorFormat());

Des idées pour régler ça ?

A oui, et je m'occupe en ce moment de l'algorithme qui permet de colorer les textures, pour ceux qui ne savent pas modifier une image pixel par pixel c'est la : http://www.siteduzero.com/forum-83-489984-p1-irrlicht-modifier-une-texture-pixel-par-pixel.html#r4667150
Création du message 17-02-2010 11:16:08 Ilovechocolat
J'ai réussit a modifier une image pixel par pixel, il me faut encore l'algorithme de coloration et après ça devrait être bon

[EDIT] help, je suis paumé, j'ai un code qui devrais marcher mais qui m'affiche écran noir :

Code c++ :

#include <IRR/irrlicht.h>

int main()
{
	irr::IrrlichtDevice *device = irr::createDevice(irr::video::EDT_OPENGL, irr::core::dimension2d<irr::u32>(640, 480));
	if (device == 0)
		return 1;
	irr::video::IVideoDriver* driver = device->getVideoDriver();
	irr::scene::ISceneManager* smgr = device->getSceneManager();
	device->getFileSystem()->addZipFileArchive("map-20kdm2.pk3");
	irr::scene::IAnimatedMesh* mesh = smgr->getMesh("20kdm2.bsp");
	irr::scene::ISceneNode* node = 0;

	if (mesh)
		node = smgr->addOctreeSceneNode(mesh->getMesh(0), 0, -1, 1024);
	if (node)
		node->setPosition(irr::core::vector3df(-1300,-144,-1249));
	smgr->addCameraSceneNode(0, irr::core::vector3df(90,90,0), irr::core::vector3df(0,0,0));
	device->getCursorControl()->setVisible(false);
	int lastFPS = -1;

	irr::video::ITexture* blueView = driver->addRenderTargetTexture(driver->getScreenSize(), "blue", driver->getColorFormat());

	while(device->run())
	{
		driver->beginScene(true, true, 0);
		driver->setRenderTarget(blueView, true, true, irr::video::SColor(0,0,0,255));
		smgr->drawAll();
		driver->draw2DImage(blueView, irr::core::position2d<irr::s32>(0, 0));
		driver->endScene();

		int fps = driver->getFPS();

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

			device->setWindowCaption(str.c_str());
			lastFPS = fps;
		}
	}
	device->drop();
	return 0;
}


et dans la console, Irrlicht me dit "unsupported texture format", ça vient de cette ligne :

Code c++ :

irr::video::ITexture* blueView = driver->addRenderTargetTexture(driver->getScreenSize(), "blue", driver->getColorFormat());

Des idées pour régler ça ?

A oui, et je m'occupe en ce moment de l'algorithme qui permet de colorer les textures, pour ceux qui ne savent pas modifier une image pixel par pixel c'est la : http://www.siteduzero.com/forum-83-489984-p1-irrlicht-modifier-une-texture-pixel-par-pixel.html#r4667150

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