Eskema
26/12/2008, 13:39
Buenas gente, estoy aqui dandole vueltas a un tema de optimizacion y no veo cual de las 2 opciones que tengo sea las adecuada.
Tenemos un juego y cada mapa se almacena en un array 2d, usea mapa[10][30] por ejemplo.
Yo tengo esos mapas como fichero.h, es decir cada mapa es un mapa1.h, mapa2.h,etc,etc. De esta forma se compilan e integran en el source y a la hora de dibujarlos en el juego tan solo hago un dibuja (mapa1[10][30]);
En total tengo 2megas de mapas en ficheros.h, ahora la cosa es q me han comentado de sacar los mapas del .h y ponerlos como .dat o lo q sea, crear un unico array en el source mapaglobal[maxmapaX][maxmapaY] que este vacio, y luego con una funcion ir leyendo el mapa.dat y pasarlo a este mapaglobal[][], asi en cada pantalla que cargue leeria el mapa.dat correspondiente y lo cargaria en el mapaglobal[][] ahorrando asi teoricamente memoria.
¿Esta seria la forma mas correcta de hacerlo o existen otras formas?, ¿vale la pena codificar esas funciones, o tal cual lo tengo y por 2 megas que uso no vale la pena?
Saludos,
Tenemos un juego y cada mapa se almacena en un array 2d, usea mapa[10][30] por ejemplo.
Yo tengo esos mapas como fichero.h, es decir cada mapa es un mapa1.h, mapa2.h,etc,etc. De esta forma se compilan e integran en el source y a la hora de dibujarlos en el juego tan solo hago un dibuja (mapa1[10][30]);
En total tengo 2megas de mapas en ficheros.h, ahora la cosa es q me han comentado de sacar los mapas del .h y ponerlos como .dat o lo q sea, crear un unico array en el source mapaglobal[maxmapaX][maxmapaY] que este vacio, y luego con una funcion ir leyendo el mapa.dat y pasarlo a este mapaglobal[][], asi en cada pantalla que cargue leeria el mapa.dat correspondiente y lo cargaria en el mapaglobal[][] ahorrando asi teoricamente memoria.
¿Esta seria la forma mas correcta de hacerlo o existen otras formas?, ¿vale la pena codificar esas funciones, o tal cual lo tengo y por 2 megas que uso no vale la pena?
Saludos,