why doesn irr never work in my projects

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Post Reply
abraham
Posts: 30
Joined: Wed Jul 19, 2006 8:56 am

why doesn irr never work in my projects

Post by abraham »

i tried soo many ways to get irr. format to work in my projects and i never got it to work ever!!

Code: Select all

#include <irrlicht.h>
#include "CCameraRPGSceneNode.h"
#include <audiere.h>
#include <iostream>

using namespace audiere;
using namespace irr;

#pragma comment(lib, "Irrlicht.lib")
// hide the console window
#pragma comment(linker, "/SUBSYSTEM:windows /ENTRY:mainCRTStartup")

int main()
{
	// create device and exit if creation failed
	IrrlichtDevice *device = createDevice(
		video::EDT_OPENGL, 
		core::dimension2d<s32>(1024, 768), 
		32, 
		false, 
		true, 
		true);

	if (device == 0)
		return 1; // could not create selected driver.

	// set window caption
	device->setWindowCaption(L"Irrlicht Engine - smooth mixed 1st + 3rd person camera example by Xterm-In'Hate");

	// usual Irrlicht pointers
	video::IVideoDriver* driver = device->getVideoDriver();
	scene::ISceneManager* smgr = device->getSceneManager();
	gui::IGUIEnvironment* env = device->getGUIEnvironment();

	// load it Quake 3 map archive.
		smgr->loadScene("../../media/example.irr");

	// load and display animated fairy mesh
	scene::IAnimatedMeshSceneNode* fairy = smgr->addAnimatedMeshSceneNode( smgr->getMesh("../aod2/media/lara.x"));
	fairy->setMaterialTexture(0, driver->getTexture("media/faerie2.bmp")); // set diffuse texture
//	fairy->setPosition(core::vector3df(-10,0,-100));
	fairy->setPosition(core::vector3df(0,150,0));
	fairy->setCurrentFrame( 0 );
	//    fairy->setFrameLoop( 0, 0 );
	//    fairy->setLoopMode( false );

	// add shadow
	fairy->addShadowVolumeSceneNode();	
	smgr->setShadowColor(video::SColor(220,0,0,0));
	
		// make the model a little bit bigger and normalize its normals 
	// because of this for correct lighting
	fairy->setScale(core::vector3df(2,2,2));
	fairy->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, true);

    //	 create collision response animator
	scene::ISceneNodeAnimator * anim = smgr->createCollisionResponseAnimator( selector, fairy, core::vector3df(50,50,50),	core::vector3df(0,-1,0), core::vector3df(0,0,0));
	fairy->addAnimator(anim);
	anim->drop();
	
		   // create sky box

   //driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
   scene::ISceneNode* skyboxNode;
   skyboxNode = smgr->addSkyBoxSceneNode(
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"));
      
      	// load music

//in main

//initialize audio

   AudioDevicePtr audiereDevice;
    OutputStreamPtr stream;

    audiereDevice = OpenDevice();
    if (!audiereDevice)
     return 1;

    stream = OpenSound(audiereDevice.get(), "../aod2/media/Intro.mp3", true);
     
    if (!stream)
     return 2;

    stream->setRepeat(true);
    stream->setVolume(0.99f); // 99% volume
    stream->play(); 
    
    scene::IParticleSystemSceneNode* ps = 0; 
ps = smgr->addParticleSystemSceneNode(false); 
ps->setPosition(core::vector3df(-160,170,80)); 
ps->setScale(core::vector3df(1,1,1)); 

ps->setParticleSize(core::dimension2d<f32>(5.0f, 5.0f)); 

scene::IParticleEmitter* em = ps->createBoxEmitter( 
core::aabbox3d<f32>(-270,-200,-270,270,300,300), 
core::vector3df(0.00f,0.00f,0.0f), 
400,800, 
video::SColor(0,255,255,255), video::SColor(0,255,255,255), 
8000,10000); 

ps->setEmitter(em); 
em->drop(); 

scene::IParticleAffector* paf = 
ps->createGravityAffector(core::vector3df(0.00f,0.00f, 0.0f), 1000); 

ps->addAffector(paf); 
paf->drop(); 




    // create camera RPG ////////////////////////////////////////////////
    irr::scene::CCameraRPGSceneNode * cam = new irr::scene::CCameraRPGSceneNode( fairy, smgr, 999,  device, selector, "cam.xml" );
    smgr->setActiveCamera( cam ); // As I did not modify SceneManager...
    cam->drop();
    // create camera RPG ////////////////////////////////////////////////

    // run render loop
	while(device->run())
	if (device->isWindowActive())
	{
		driver->beginScene(true, true, irr::video::SColor( 255, 255, 255, 255 ) );
        smgr->drawAll();

        driver->endScene();
	}
	device->drop(); // drop device
	return 0;
}
Image

i keep getting those errors. Whats with the code? and is that fullscreen code correct because it isnt working correctly. :?
n7600gt 256mb ram 128bit
AMD 3200+
GA-K8NF-9 gigabyte
AlexL
Posts: 184
Joined: Tue Mar 02, 2004 6:06 pm
Location: Washington State

Post by AlexL »

The reason your getting this error, is because no where in your code do you have selector declared; or at least not at my quick glance. So once you get that declared it should fix your compiling error :)
vitek
Bug Slayer
Posts: 3919
Joined: Mon Jan 16, 2006 10:52 am
Location: Corvallis, OR

Post by vitek »

Yeah. The problem is not Irrlicht, it is your failure to create valid C++ code.

Travis
abraham
Posts: 30
Joined: Wed Jul 19, 2006 8:56 am

Post by abraham »

it compiled now but in command promt it says its unsupported, and if i chage it from getmesh to loadScene then those errors come up again.
does irr. format works with irrcamera source code?

update:

Code: Select all

#include <irrlicht.h>
#include "CCameraRPGSceneNode.h"
#include <audiere.h>
#include <iostream>

using namespace audiere;
using namespace irr;

#pragma comment(lib, "Irrlicht.lib")
// hide the console window
#pragma comment(linker, "/SUBSYSTEM:windows /ENTRY:mainCRTStartup")

int main()
{
	// create device and exit if creation failed
	IrrlichtDevice *device = createDevice(
		video::EDT_OPENGL, 
		core::dimension2d<s32>(1024, 768), 
		32, 
		false, 
		true, 
		true);

	if (device == 0)
		return 1; // could not create selected driver.

	// set window caption
	device->setWindowCaption(L"Irrlicht Engine - smooth mixed 1st + 3rd person camera example by Xterm-In'Hate");

	// usual Irrlicht pointers
	video::IVideoDriver* driver = device->getVideoDriver();
	scene::ISceneManager* smgr = device->getSceneManager();
	gui::IGUIEnvironment* env = device->getGUIEnvironment();

	// load it Quake 3 map archive.
	scene::IAnimatedMesh* q3levelmesh = smgr->getMesh("../aod2/media/example.irr");
	scene::ISceneNode* q3node = smgr->addOctTreeSceneNode(q3levelmesh->getMesh(0));
    q3node->setPosition(core::vector3df(-100,-130,-100));
    
    // create a triangle selector
	scene::ITriangleSelector* selector = smgr->createOctTreeTriangleSelector( q3levelmesh->getMesh(0), q3node, 128);
	q3node->setTriangleSelector(selector);
    selector->drop();

	// create light

	q3node = smgr->addLightSceneNode(0, core::vector3df(-100,130,-100), 
		video::SColorf(1.0f, 1.0f, 1.0f, 1.0f), 450.0f);

	// load and display animated fairy mesh
	scene::IAnimatedMeshSceneNode* fairy = smgr->addAnimatedMeshSceneNode( smgr->getMesh("../aod2/media/lara.x"));
	fairy->setMaterialTexture(0, driver->getTexture("media/faerie2.bmp")); // set diffuse texture
//	fairy->setPosition(core::vector3df(-10,0,-100));
	fairy->setPosition(core::vector3df(0,150,0));
	fairy->setCurrentFrame( 0 );
	//    fairy->setFrameLoop( 0, 0 );
	//    fairy->setLoopMode( false );

	// add shadow
	fairy->addShadowVolumeSceneNode();	
	smgr->setShadowColor(video::SColor(220,0,0,0));
	
		// make the model a little bit bigger and normalize its normals 
	// because of this for correct lighting
	fairy->setScale(core::vector3df(2,2,2));
	fairy->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, true);

    //	 create collision response animator
	scene::ISceneNodeAnimator * anim = smgr->createCollisionResponseAnimator( selector, fairy, core::vector3df(50,50,50),	core::vector3df(0,-1,0), core::vector3df(0,0,0));
	fairy->addAnimator(anim);
	anim->drop();
	
		   // create sky box

   //driver->setTextureCreationFlag(video::ETCF_CREATE_MIP_MAPS, false);
   scene::ISceneNode* skyboxNode;
   skyboxNode = smgr->addSkyBoxSceneNode(
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"),
      driver->getTexture("../aod2/media/sky!.bmp"));
      
      	// load music

//in main

//initialize audio

   AudioDevicePtr audiereDevice;
    OutputStreamPtr stream;

    audiereDevice = OpenDevice();
    if (!audiereDevice)
     return 1;

    stream = OpenSound(audiereDevice.get(), "../aod2/media/Intro.mp3", true);
     
    if (!stream)
     return 2;

    stream->setRepeat(true);
    stream->setVolume(0.99f); // 99% volume
    stream->play(); 
    
    scene::IParticleSystemSceneNode* ps = 0; 
ps = smgr->addParticleSystemSceneNode(false); 
ps->setPosition(core::vector3df(-160,170,80)); 
ps->setScale(core::vector3df(1,1,1)); 

ps->setParticleSize(core::dimension2d<f32>(5.0f, 5.0f)); 

scene::IParticleEmitter* em = ps->createBoxEmitter( 
core::aabbox3d<f32>(-270,-200,-270,270,300,300), 
core::vector3df(0.00f,0.00f,0.0f), 
400,800, 
video::SColor(0,255,255,255), video::SColor(0,255,255,255), 
8000,10000); 

ps->setEmitter(em); 
em->drop(); 

scene::IParticleAffector* paf = 
ps->createGravityAffector(core::vector3df(0.00f,0.00f, 0.0f), 1000); 

ps->addAffector(paf); 
paf->drop(); 




    // create camera RPG ////////////////////////////////////////////////
    irr::scene::CCameraRPGSceneNode * cam = new irr::scene::CCameraRPGSceneNode( fairy, smgr, 999,  device, selector, "cam.xml" );
    smgr->setActiveCamera( cam ); // As I did not modify SceneManager...
    cam->drop();
    // create camera RPG ////////////////////////////////////////////////

    // run render loop
	while(device->run())
	if (device->isWindowActive())
	{
		driver->beginScene(true, true, irr::video::SColor( 255, 255, 255, 255 ) );
        smgr->drawAll();

        driver->endScene();
	}
	device->drop(); // drop device
	return 0;
}
n7600gt 256mb ram 128bit
AMD 3200+
GA-K8NF-9 gigabyte
Post Reply