Con todo el tema de los SSD, se me vino a la mente un juego que prometía en su momento y que una de las novedades del Idtech 5 eran las Megatexturas, ese juego era Rage, un juego con un largo desarrollo que tenía altas espectativas, pero quitando el tema del propio juego, algo fallo al inició y era esto:
Un festival de poping de textura, pero porque sucedió. Carmack introdujo como novedad(mucha novedad) las Megatexturas o Texturas virtuales, pero que es la Megatexturas?.
Para no caer en mucho tecnicismo , es simple una textura tradicional se divide en sub texturas, eso se le conoce como mips Maps, osea una textura de 4k contiene 4 niveles de resolución, nivel 0 (4k), nivel 1 (2k), nivel 2 (1024) etc, la razón de esto es que no todas la texturas necesitan el mismo nivel de detalle por ejemplo un barril a lo lejos.
El problema de lo anterior expuesto, es que para ese barril a lo lejos que necesitas una textura de menor resolución, tienes que cargar en la VRAM la textura completa con todos sus mips Maps, eso ocupa espacio.
Aquí es donde entra las Megatexturas, si en vez de cargar toda la textura en la VRAM solo cargamos los mips Maps necesarios?,pues te ahorras muchísima VRAM, el problema es que necesitarias ir cargando esos mips maps al vuelo desde el Disco Duro, a esto se le conoce como streaming de texturas.
Con esto Carmack pretendía meter texturas muy detalladas en las memorias escasas de 360 y PS3, otro benefició de las Megatexturas es que ni una sola texturas se repite gracias a una técnica de pintado a mano, evitando el famoso Tiling que poseen los juegos, que es la repetición de texturas.
Pero fue un fracaso el streaming de Texturas era inviable el discos mecánicos y en las conexiones de aquella época con muchas latencias, resultando cargas de texturas tardías.
Pero una década después con PC, PS5 y series X ,el hardware ya está listo para darle la Bienvenida a las Megatexturas, gracias a los SSD y principalmente a las conexiones directas, donde a la GPU se puede comunicar de manera directa con el SSD sin pasar por la CPU, eso reduce latencias y las Megatexturas se podrán cargar al vuelo como la idea inicial del genio John Carmark.