Ich hab folgendes kleines Problem:
Ich wollte das erste Irrlicht-Tutorial "Hello, World!" machen, dabei aber die Parameter deviceType, window size und fullscreen aus einer xml-Datei auslesen.
Die xml-Datei sieht so aus:
Code:
<?xml version="1.0"?>
<config>
<driverType value=EDT_OPENGL></driverType>
<width value=640></width>
<height value=480></height>
<fullscreen value=0></fullscreen>
</config>
Und das ist mein code:
Code:
#include <irrlicht.h>
using namespace irr;
using namespace core;
using namespace scene;
using namespace video;
using namespace io;
using namespace gui;
#ifdef _MSC_VER
#define _CRT_SECURE_NO_WARNINGS
#pragma comment(lib, "Irrlicht.lib")
#endif
E_DRIVER_TYPE driverType;
int width;
int height;
bool fullscreen;
void checkconfig ()
{
IrrXMLReader* xml = createIrrXMLReader("config.xml");
while (xml && xml->read())
{
if (!strcmp("driverType", xml->getNodeName()))
driverType = xml->getAttributeValue("value");
else
if (!strcmp ("width", xml->getNodeName()))
width = xml->getAttributeValue("value");
else
if (!strcmp ("height", xml->getNodeName()))
height = xml->getAttributeValue("value");
else
if (!strcmp ("fullscreen", xml->getNodeName()))
fullscreen = xml->getAttributeValue("value");
break;
}
delete xml;
}
int main ()
{
checkconfig ();
IrrlichtDevice *device =
createDevice(driverType, core::dimension2d<u32>(width, height), 16,
fullscreen, false, false, 0);
//Der Rest ist genau wie der normale Hello-World code
Allerdings bekomme ich beim debuggen folgende Fehlermeldungen:
Zitat:
c:\dokumente und einstellungen\alex.rodie\desktop\nightsphere\bin\nightsphere\main.cpp(26) : error C2440: '=': 'const char *' kann nicht in 'irr::video::E_DRIVER_TYPE' konvertiert werden
Es gibt keinen Kontext, in dem diese Konvertierung möglich ist
c:\dokumente und einstellungen\alex.rodie\desktop\nightsphere\bin\nightsphere\main.cpp(29) : error C2440: '=': 'const char *' kann nicht in 'int' konvertiert werden
Es gibt keinen Kontext, in dem diese Konvertierung möglich ist
c:\dokumente und einstellungen\alex.rodie\desktop\nightsphere\bin\nightsphere\main.cpp(32) : error C2440: '=': 'const char *' kann nicht in 'int' konvertiert werden
Es gibt keinen Kontext, in dem diese Konvertierung möglich ist
Weiß jemand wie man das Umgehen kann?
Schon mal Danke im Voraus!