Noticias

¡Ayuda a la Comunidad GM, haz una donación!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: Guardar matrices en cadenas de texto  (Leído 392 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Clamud

en: Mayo 20, 2015, 05:17:40 pm
Estoy trabajando en un proyecto en el que uso muchos arreglos 2D, y esos arreglos tengo que guardarlos y cargarlos desde archivos externos.

Al principio, para simplificar el código, usaba ds_grids, y con la ayuda de las funciones ds_grid_write y ds_grid_read manejaba las matrices como una sola cadena de texto.

Después empecé a trabajar con ENIGMA y me dí cuenta de que el juego tenía un rendimiento mucho mayor, el problema es que las ds_grids creadas con GM no son compatibles con las de ENIGMA, entonces para que el juego fuese compatible con los dos ambientes de desarrollo, comencé a guardar los datos en archivos de texto usando las funciones file_text_write_real y file_text_read_real, esto funciona bien, pero no me gusta que los archivos quedan de un tamaño muy grande para la información que contienen, y además se pueden editar fácilmente con el block de notas.

Ahora he pensado en crear algunas funciones para guardar los datos de forma parecida a como lo hacen las funciones ds_grid, pero no tengo suficientes ideas o información para empezar. Sé que internamente GM maneja los números en tipos parecidos a los que se usan en C (bool, int, float, double), y cuando se inicializa una variable, ésta ocupa la menor cantidad de bytes necesarios para guardar la cantidad requerida, cuando el valor cambia también puede cambiar el tipo interno. También he notado que los números enteros con signo se representan usando el complemento a dos, pero no tengo idea de cómo se representan los números con punto flotante.

La forma de guardar también puede depender de la codificación del archivo de texto. Otra opción es guardar en archivos binarios.
Espero que alguien pueda ayudarme con información o ideas.
Gracias.

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.