Opinólogo Geek: ¿Por qué la retrocompatibilidad es tan complicada? - Generación Geek

Novedades

Banner

lunes, 6 de abril de 2020

Opinólogo Geek: ¿Por qué la retrocompatibilidad es tan complicada?




Hace un par de semanas, manifesté en otro artículo que no me gustaba ver que los esfuerzos de varias compañías estaban centrados en remakes de juegos clásicos en lugar de seguir creando juegos nuevos. Sin embargo, esta tendencia puede entenderse debido a que las consolas actuales han tenido problemas con la retrocompatibilidad.
 
Esto último es algo que ha estado siendo bastante discutido durante los últimos meses, ya que la nueva generación de consolas la ha tenido como un punto de contienda. Quizás por lo mismo, creo que es bueno que entendamos por qué éste podría ser un problema a futuro, y no lo digo desde un punto de vista de sus implicancias en los jugadores, sino de un punto de vista técnico.
 
Para partir, hay que explicar que la retrocompatibilidad se entiende como el proceso en el que una máquina ejecuta programas (en este caso, una consola permite jugar juegos) de una versión anterior de la misma máquina. En consolas, esto se ha hecho de diferentes formas, y con resultados distintos en cada caso, aunque también ha tenido que hacerse en PC en años recientes.
 
Con los años, el diseño de los componentes físicos (hardware) de los PC y el software va evolucionando, y esto significa que  se requieren optimizaciones diferentes. Por eso, por ejemplo, los juegos que se pensaron para jugarse con procesadores de un solo núcleo tienen problemas cuando los jugados en computadores con procesadores multi-núcleo, donde las diferentes operaciones se dividen en múltiples unidades de procesamiento.


Esto se ha podido ver especialmente con GOG y con Nightdive Studios, quienes han debido parchar juegos desarrollados para consolas o sistemas anteriores para poder hacerlos funcionar en máquinas modernas. Esto no es tan sencillo como activar el modo de compatibilidad de Windows, ya que existen varios programas que deben intermediar entre el software y el hardware de la máquina, como en muchos casos lo es DirectX.
La solución para muchos de estos casos consiste en una "máquina virtual", que es cuando la computadora corre un programa en el que emula otro sistema operativo, un ejemplo sería usar un programa en Windows 10 que haga correr macOS Catalina. Este método requiere gran potencia para funcionar, y ha sido un problema en muchos casos por lo mismo.



La alternativa es utilizar un método nativo, que se utilizó en la PS2 y PS3 para que cada consola fuera compatible con su predecesora. Esto consistía en poner el chip principal de la placa anterior en la consola más moderna, y así poder ejecutar el juego antiguo. Esto daba como resultado una mejor emulación, pero con un costo monetario mayor, ya que significa tener dos consolas dentro de una, y fue una de las razones del elevado precio de lanzamiento de la PS3.
 
Este precedente fue parte de las razones por las que se anunció que PS5 tendrá un método de compatibilidad mediante máquina virtual con los juegos de su predecesora. Sin embargo, muchos manifestaron su deseo de poder jugar juegos de PS3, pero esto es incluso más complejo, y se debe a una de las razones por las que dicha consola casi fracasó en su generación.
 
Cuando Sony comenzó a planear la PS3, el entonces presidente de la compañía, Ken Kutaragi, inició un proyecto colaborativo con Toshiba e IBM, donde desarrollaron el procesador llamado Cell, el cuál resultó ser muy poderoso, pero muy difícil de utilizar, debido a la gran cantidad de núcleos que tenía el procesador. 

 Diagrama del procesador de PlayStation 3, comúnmente llamado Cell.

Esto significó que muchas empresas no supieron aprovechar el poder de la consola, el cuál estaba fragmentado en varias partes. Parte del problema es que este procesador no estaba pensado solo para juegos (de hecho, las primeras PS3 podían usarse para crear súper-computadores), y causó que los primeros años de la consola estuvieran marcados por ports de mala calidad al ser una máquina más compleja que su principal competidora. 
A la hora de diseñar la PS4, la retrocompatibilidad fue descartada por Mark Cerny, arquitecto de la consola, y muchas remasterizaciones de juegos anteriores utilizan versiones de otras consolas para funcionar en la nueva máquina de Sony.
  
Microsoft ha tenido más suerte en este ámbito debido a que existe mayor continuidad entre sus sistemas y componentes, aunque no es una retrocompatibilidad total, sino que un emulador diferente para cada juego, con optimizaciones diferentes en cada caso, y que no existen para la totalidad de los juegos del sistema por la misma causa.
También, las consolas Xbox tienen ciertos componentes en común con Windows, lo cual ayuda a ciertos juegos a funcionar óptimamente, aunque tampoco es una compatibilidad milagrosa, sino que un pequeño número de similitudes, y es la razón por las que muchos desarrolladores no tienen tantos problemas en trabajar con esta familia de consolas.



Nintendo, por otra parte, tuvo retrocompatibilidad entre Wii y Gamecube, y luego optó por la Consola Virtual, que permitía jugar juegos de consolas anteriores, aunque con títulos selectos en cada caso. Hoy en día, aseguraron que Switch podría ejecutar cualquier juego de consolas anteriores por su potencia, pero no es posible jugar juegos de sistemas anteriores debido a cambios en el formato físico de los juegos.
  
Sin embargo, algo importante, es que la retrocompatibilidad permite crear mayor fidelidad de los consumidores hacia una marca, ya que muchos conservan sus consolas y juegos de una consola incluso cuando adquieren una nueva generación, y tener que recurrir a emulación en PC no siempre es una opción. Esto es algo a considerar, y podría justificar la inversión de las compañías en estos procesos.
Estos son solo algunos de los factores que complican la retrocompatibilidad, aunque no todos. Si bien aquí he tratado de explicar todo de forma simple, hay que reconocer que la gente que trabaja en la industria tiene conocimientos diferentes, y siempre habrá opiniones diferentes. Sin embargo, sería un error negar todas las dificultades que implican cosas que nos parecen tan mundanas como poder jugar juegos antiguos.
 
Escrito por Mario