¿Por qué los desarrolladores de juegos de consola usan archivos grandes para almacenar datos del juego en lugar de archivos pequeños como en la PC? Menos corrientes en la memoria? ¿Necesita acceder al árbol de archivos muchas veces? ¿Otra razon?
optimization
console
file
Triang3l
fuente
fuente
Respuestas:
Tener un solo archivo grande tiene algunos beneficios para el rendimiento, independientemente de la plataforma. Muchos juegos de PC también usan archivos grandes.
Puede almacenar en caché manualmente el desplazamiento de cada archivo dentro del archivo grande, para evitar la necesidad de leer las entradas del directorio del sistema de archivos (lo que puede implicar múltiples búsquedas por archivo abierto si pierde el caché).
Obtiene el control total del orden de los datos dentro del archivo, por lo que puede organizarlo para minimizar la necesidad de búsquedas lentas.
La compresión de datos generalmente es más efectiva en un solo archivo grande que en archivos individuales.
Tenga en cuenta que evitar búsquedas es muy efectivo para acelerar los tiempos de carga. Un disco duro típico puede tener un tiempo de búsqueda de 10 ms y una velocidad de transferencia de 100 MB / s. Supongamos que necesita cargar 100 archivos de sombreado con un tamaño total de 1 MB. Si tiene que hacer una búsqueda para cada uno, tomará un segundo cargarlos a todos. Con una sola búsqueda estás mirando 20ms para cargarlos todos.
Por supuesto, no todas las consolas tienen discos duros, y las unidades ópticas tienen un rendimiento de búsqueda aún peor, por lo que esos sombreadores pueden tardar 5 o más segundos en cargar un DVD cuando lo buscan. Además, las consolas tienen mucha menos memoria para usar como caché que una PC, por lo que tienden a cargar datos con más frecuencia.
fuente
Además de una muy buena respuesta dada por Adam, también me gustaría señalar algunos otros factores importantes:
Cuantos menos archivos tenga, más fácil será la implementación de su aplicación. Esto es especialmente cierto si desea implementar su aplicación en plataformas móviles, como iOS, Android o Windows Phone. Incluso si en el caso de Windows Phone todavía puede tener tantos archivos como desee, ya que los archivos XAP, utilizados para la implementación, son solo un archivo zip, es
Tener todos sus activos en un solo archivo garantiza que todos se descarguen / lean "en pieza" . Muchos jugadores te excusarán por un retraso notable para descargar activos o desempacarlos antes de que comience el juego, pero no serán indulgentes siempre que enfrenten pausas incluso sutiles durante el juego. Por supuesto, puede almacenar previamente en caché sus recursos en RAM, pero cargarlos "en pieza" es aún más fácil para este propósito que cargarlos por archivo.
fuente