Serialización de datos en .NET: como exportar e importar datos de nuestro juego en archivos fácilmente

No hace mucho un compañero de los foros de Stratos-AD venia preguntando como podría implementar un sistema para guardar partidas de su juego en XNA y después volver a cargarlas, no en si el como el organizar los datos e información del juego y como gestionarlo en un archivo si no en si como podría exportar e importar fácilmente información a un archivo en disco. Esto me recordó que yo en su día, cuando empece a programar en .NET, me encontré con el mismo problema y que esto es una duda que a muchos nos surge.

En Visual Basic 6.0, donde estuve muchos años programando, esto era relativamente fácil ya que mediante las funciones integradas para gestionar la escritura y lectura de archivos en formato binario era tan fácil como pasar la propia variable de estructura de datos como parámetro a escribir o leer, Visual Basic 6.0 se encargaba de volcar en formato binario el contenido integro de la variable y despues permitía volver a crear la variable con el mismo contenido. Supongo que en C/C++ sera igual de directo, sin embargo en .NET ya no era tan fácil, no al menos de la misma forma. Aquí no podías llamar a las funciones de System.IO y decirle que te volcara la variable directamente en un archivo. Sin embargo si que existe una manera sencilla de hacer esto, mediante la serialización a XML.

Resumiendo mucho, la serialización a XML es un mecanismo que permite convertir una estructura de datos en una estructura de texto en formato XML. Este mecanismo esta presente en varias tecnologías de programación como .NET o Java. Yo voy a explicar mi ejemplo en .NET mediante C#.

Seguir leyendo Serialización de datos en .NET: como exportar e importar datos de nuestro juego en archivos fácilmente

Segunda edición de Gamevelop Madrid

Gamevelop es un evento mensual que pretende reunir a desarrolladores de videojuegos de todos los niveles y áreas para compartir conocimientos y experiencias mediante charlas y ponencias que cualquiera que este interesado puede proponer. A su vez la idea es hacer de forma paralela eventos con otro planteamiento tales como competiciones, gamejams, talleres, seminarios o cualquier actividad similar que pudiera ser del interés de todos.

Para más informacion sobre que es Gamevelop seguir este enlace.

Actualmente Gamevelop solo se organiza en Madrid pero poco a poco la idea es que se vaya extendiendo a otras comunidades y ciudades, como por ejemplo Barcelona, donde hay gente que esta encargándose de organizarlo.

Este viernes 6 de julio es la segunda edición de Gamevelop Madrid y esta es la agenda prevista:

Fecha y lugar

6 de Julio. Centro Cívico Viñagrande de AlcorcónCalle Parque Ordesa, s/n (Metro Joaquín Vilumbrales de la línea 10)
Como llegar desde la estación de Metro

Agenda 

  • 18:00 – Llegada de asistentes, networking libre.
  • 18:45 – Ponencia de Lucas GonzálezLead Game Designer en Tequila Works, sobre diseño de videojuegos o game design.
  • 20:00 – Presentación de proyectos. (Si quieres presentar el tuyo contando sus tripas, contacta con nosotros!)
  • 20:30 – Networking.

La entrada es gratuita aunque para facilitar el numero de asistentes para organizar la sala de conferencias se recomienda confirmar asistencia mediante ticketea.

Enlace a la entrada del evento en la web de Gamevelop:
http://gamevelop.com/segunda-edicion-de-gamevelop-madrid/

dx_lib32 se convierte en proyecto de código abierto

Después de casi 10 años de trabajo y varias versiones publicadas desde 2004 hasta finales de 2009, con una pequeña pero modesta comunidad de usuarios detrás, el Proyecto dx_lib32 finalmente pasa a ser de código abierto bajo licencia LGPL para todo aquel que este interesado en conocer las tripas de uno de mis proyectos más importantes o bien quiera seguir continuando su desarrollo o migrarlo a otros lenguajes y plataformas.

La ultima versión desarrollada, que no se publico en la web del proyecto, la versión 2.2.1, esta disponible junto al código de los ejemplos, tanto de Visual Basic 6.0 como Visual Basic .NET, los fuentes en HTML de la documentación para generar el archivo CHM de Windows, las dependencias necesarias, tanto el runtime de Visual Basic 6.0, el ActiveX de DirectX8 como los codecs OGG Vorbis.

Toda la información sobre el Proyecto dx_lib32 la podéis encontrar en su sección dentro del portfolio de proyectos.

Bon profit ;)

Encendiendo motores

Bienvenidos a Visual Studio EX3.

Después de varios meses divagando sobre el diseño y contenido a escribir ya esta listo y operativo mi sitio web personal, un rincón donde encontrareis mi portfolio de proyectos en los que he trabajado tanto en proyectos personales como colaboraciones o juegos comerciales, con todo lujo de detalles, y donde pretendo con el tiempo ir enseñando progresos de nuevos proyectos así como tratar de escribir algún articulo sobre desarrollo relacionado con videojuegos que pudiera interesar.

Imágenes del próximo proyecto en el que estoy trabajando.
Primeros pasos del experimento TLSA en Windows Phone.

Si queréis saber más sobre mi y mi trayectoria estos últimos años os aconsejo, a parte de leeros la sección Acerca de mi, las secciones de los proyectos TLSA (link1, link2, link3) y dx_lib32, dos proyectos a los que he dedicado muchos años y de los que he aprendido mucho.

Podéis seguir el blog por Facebook desde su propia pagina o bien seguirme en twitter, Google+ y/o Linkedin donde iré publicando las entradas del blog.

Un saludo y espero que os guste lo que encontréis aquí ;)