Al fin corregí el problema de la carga de scripts y otro fallo muy molesto que no me permitía acceder al GUI del juego (y de hecho creo que abortaba el script). Este último se debía a algo muy raro, no puedo obtener el puntero al GUI hasta después de haber obtenido los punteros a las entidades involucradas en el script. Curioso.
Al final, tuve que volver atrás a los ifstream de C++. Pero aunque no usé el código que me sugirió spoke, tengoque decir qeu su ayuda fue invaluable, ya que me impulsó a estudiar el problema a fondo. Además, atrajo mi interés hacia las funciones de Ogre para manejo de archivos, que posiblemente revisite más tarde a ver si les puedo sacar provecho. Creo que tendré que ponerlo en los créditos como uno de los contribuyentes.
Al final, el código es el siguiente:
string loadFile(const char* filename)
{
string str;
ifstream ifs(filename, ios::binary);
if(!ifs.is_open())
{
throw exception("file could not be opened");
}
long size;
ifs.seekg(0, ios::end);
size = ifs.tellg();
ifs.seekg(0, ios::beg);
str.resize(size);
ifs.read(&str[0], size);
return str;
}
Y hablando de contribuciones, hoy debo reorganizar un poco el SVN del proyecto en sourceforge y oficialmente se abre la temporada de reclutamiento (otra vez). Se necesitan desarrolladores experimentados ocn Ogre, Lua, OpenAL o Bullet, que conozcan Code::Blocks, aunqeu también me interesarían un mantenedor para Visual C++. En el caso de los artistas, deben usar Blender, Gimp, en fin, solo software libre.
Si no eres desarrollador ni artista aún puedes contribuir: sígueme en twitter, si tienes blog enlaza a los posts de imágenes en este, twitéalos, en fin, ayuda a difundir un poco la noticia. Minetras más personas tenga empujándome, más obligado me veré a disciplinarme y desarrollar más serio. Y por supuesto, se aceptan sugerencias.
Al final, tuve que volver atrás a los ifstream de C++. Pero aunque no usé el código que me sugirió spoke, tengoque decir qeu su ayuda fue invaluable, ya que me impulsó a estudiar el problema a fondo. Además, atrajo mi interés hacia las funciones de Ogre para manejo de archivos, que posiblemente revisite más tarde a ver si les puedo sacar provecho. Creo que tendré que ponerlo en los créditos como uno de los contribuyentes.
Al final, el código es el siguiente:
string loadFile(const char* filename)
{
string str;
ifstream ifs(filename, ios::binary);
if(!ifs.is_open())
{
throw exception("file could not be opened");
}
long size;
ifs.seekg(0, ios::end);
size = ifs.tellg();
ifs.seekg(0, ios::beg);
str.resize(size);
ifs.read(&str[0], size);
return str;
}
Y hablando de contribuciones, hoy debo reorganizar un poco el SVN del proyecto en sourceforge y oficialmente se abre la temporada de reclutamiento (otra vez). Se necesitan desarrolladores experimentados ocn Ogre, Lua, OpenAL o Bullet, que conozcan Code::Blocks, aunqeu también me interesarían un mantenedor para Visual C++. En el caso de los artistas, deben usar Blender, Gimp, en fin, solo software libre.
Si no eres desarrollador ni artista aún puedes contribuir: sígueme en twitter, si tienes blog enlaza a los posts de imágenes en este, twitéalos, en fin, ayuda a difundir un poco la noticia. Minetras más personas tenga empujándome, más obligado me veré a disciplinarme y desarrollar más serio. Y por supuesto, se aceptan sugerencias.
Como me gustaria ofrecer mi ayuda, pero tengo que aceptar que aun no tengo tiempo para nada divertido entre el trabajo nuevo y la familia. Espero que pronto... De esperanzas vive el pobre. Cual es el nombre del proyecto en sourceforge.net?
ResponderEliminarark-rpg.sourceforge.net, ese es el sitio, por ahora, el nombre de proyecto es ark-rpg. Bueno, algun dia podras volver a desarrollar juegos, y si no tienes otros planes cuando eso pase pues eres bienvenido en este.
ResponderEliminar