Hola, gente de Hardlimit. Desde que @_Neptunno_ me invitara a hacer un hilo del gaming en Linux, he estado dándole algunas vueltas porque la curva de aprendizaje es bastante pronunciada al principio aunque rápidamente se suaviza y no acaba siendo mucho más difícil que el gaming en Windows. Al final, es gaming en PC y son los mismos conceptos pero hay que tener unas cuantas cosillas claras desde el principio.
Esto no es una invitación para que se deje de jugar desde Windows. Es más, si juegas en Windows y te funciona bien, no tienes problema alguno y no ves la necesidad de cambiar, no cambies, sigue con lo que te funciona. No vas a notar ninguna mejora de rendimiento y utilizar Linux de la misma manera que se utiliza Windows es un error. Eso sí, invito a todo el mundo que no haya usado nunca un sistema GNU/Linux a usarlo y a experimentar con algo distinto.
Aclarado este primer punto también quiero dejar claro que usar Linux, aunque no te va a dar ninguna ventaja de rendimiento con respecto a Windows, desde hace un par de años tampoco es una clara desventaja. Antes había mucha diferencia de desempeño pero hoy en día están practicamente a la par, gana por algunos FPS Windows pero no en todos los juegos ni en todas las condiciones. Aquí voy a intentar dar algunos consejos para que la experiencia sea lo mejor posible.
Hardware
Esta sección es importante pero también entiendo que cada uno tiene lo que tiene y no se puede estar cambiando de hardware muy a menudo. Pero bueno, no está de más dar algún consejillo aunque, depende cuando estés leyendo el hilo, aquí la cosa puede haber cambiado porque esto está siempre en continuo desarrollo.
-
CPU: Fácil, cualquiera. Tanto AMD como Intel, hoy en día, dan soporte a Linux y el kernel está perfectamente optimizado para ambas CPU’s. Lo que, si además te gusta hacer streaming, recomendaría una CPU Intel con gráficos integrados. Pero en el tema del streaming no voy a entrar porque da para otro hilo.
-
GPU: Aquí es donde tiene importancia la cosa y me tengo que explayar un pelín demasiado...
A día de hoy, las mejores gráficas para gaming en Linux (esto hay que remarcarlo mucho) son las Radeon de AMD. Esto no quiere decir que las gráficas de Nvidia no funcionen en Linux, no, en absoluto. Nvidia da soporte a linux con un driver propietario que funciona razonablemente bien aunque tiene algunos problemillas. También hay que tener en cuenta que si tu gráfica Nvidia es demasiado vieja, ésta deja de tener soporte oficial en los repositorios de las principales y solamente tienes disponible el driver legacy que, bajo mi opinión, es mejor una castración sin anestesia que intentar instalar un driver legacy de Nvidia. La alternativa es el driver libre Noveau, hecho con ingeniería inversa, y que tiene un soporte para Vulkan a través de NVK un poco en pañales.
Las gráficas de AMD, por el contrario, aunque también tienen un driver propietario, éste no es el recomendado ya que le dan un soporte muy limitado a sus tecnologías (igual que hace Nvidia).
Y ahí entra el proyecto AMD OPENGPU y la pila gráfica Mesa que es el estándar de Linux, un proyecto comunitario que integra RADV, el driver de AMD que interacciona con la API Vulkan y que indispensable para el gaming en Linux.
Intel, por contra, a día de hoy no puede ser recomendada para el gaming en Linux (y quizás tampoco para el pc-gaming en general) porque, aunque sus drivers son open source, el driver Vulkan de Intel, a día de hoy, deja mucho que desear en lo que a Linux se refiere.
Distros
No quiero entrar tampoco demasiado en detalle sobre las diferentes distribuciones de Linux ni qué son porque no creo que aquí haya gente demasiado novata en el mundo del PC y tampoco creo que haga demasiada falta. También haría este hilo interminable y, aun así, ya creo que me está saliendo demasiado largo.
Voy a intentar ser claro, todas las distribuciones, en principio, permiten jugar en Linux. Eso sí, hay algunas mejor optimizadas que otras. ¿Cómo hacer para elegir la adecuada? Pues es un poco acierto error hasta que encuentres la que mejor se adapta a tus usos del pc y a la potencia del hardware. No es lo mismo tener un i3-3250 que un i5-12600K ya que, para el primero, deberíamos elegir una distribución ligerita, con un escritorio MATE o XFCE. Y para el segundo, una que exprima al máximo su rendimiento.
Como norma general, una versión de kernel más actual traerá instrucciones para un hardware más actual así que si tenemos un hardware relativamente nuevo, necesitaríamos una distro más al estilo rolling-release y con uno algo menos actual esto no sería tan importante. También hay algunas versiones de kernel parcheadas para ser más eficientes en gaming, como es el caso del kernel ZEN de Arch, pero no sé hasta qué punto son mejores al kernel estándar.
La elección del escritorio es la parte más importante ya que, es la que va a determinar el entorno gráfico en el que corremos los juegos. Lo principal es que soporte Wayland, que es el protocolo que debe ser el estándar en el futuro inmediato. Pero este protocolo, a día de hoy, solamente está soportado al 100% en GNOME y en KDE Plasma, que son los escritorios más pesados y para un hardware más limitado a lo mejor no es la mejor opción. No obstante, éstos siempre ocuparán muchos menos recursos que Windows 10...
También hay que tener en cuenta si tienes una gráfica Nvidia, que la distro que elijas, tenga acceso a estos drivers o que la instalación de los mismos no sea muy complicado. Si disponemos de gráficas AMD o Intel, como ya expliqué anteriormente, no nos tendremos que preocupar por esto.
Gaming
Bien, ya tenemos nuestro equipo con una distro linux totalmente funcional. Ahora hacen falta juegos. He de remarcar que no todos los juegos son compatibles con GNU/Linux pero el catálogo es muy extenso siendo cada vez más raro que un juego no funcione de ninguna de las maneras. Nos podemos encontrar que a veces es demasiado nuevo y es necesario parchear Proton o es necesario aplicar comandos adicionales para forzar algunos modos de juego (en ProtonDB podemos encontrar información de todos los juegos, si son compatibles o si son necesarios comandos adicionales para hacerlos funcionar bien).
De momento, vamos a empezar por lo fácil:
-
Steam: Éste es el launcher de Valve y que lo empezó todo. Y aunque es el más sencillo, tiene sus cosillas. El launcher es más o menos igual que el de Windows y su instalación suele ser fácil. En la página oficial de Steam hay un .deb que solo valdría para Ubuntu, Debian, etc... No obstante, tenemos alternativas en casi todas las distros y siempre nos queda la paquetería universal como Flatpak. Una vez instalado el launcher hay que habilitar la compatibilidad Steam Play y elegir la versión de Proton a utilizar.
-
Proton: Es un fork de Wine desarrollado por Valve y es la principal herramienta que utiliza Steam para ejecutar los juegos nativos de Windows. Existen forks de terceros (ProtonGE) que mejoran y parchean el original para darle compatibilidad a juegos en teoría no soportados.
-
DXVK o VKD3D: Son API’s que traducen las llamadas al sistema de DirectX a llamadas a Vulkan (VKD3D de DX12 y DXVK de versiones anteriores). Recordemos que Microsoft no da soporte de DirectX para Linux.
Bien, con esta información puedes empezar a jugar. De manera parcial, ya que solamente podemos utilizar Steam como launcher y, aunque podemos añadir e instalar aplicaciones de terceros en Steam, no es la manera más fácil ni intuitiva de hacerlo. Para ello existen otras aplicaciones como Lutris, Bottles o Heroic Games Launcher aunque yo, solamente hablaré de ésta última porque creo que con ésta y Steam abarcamos todo el abanico de tiendas, launchers y demás juegos para PC (en emulación no me voy a meter).
- Heroic Games Launcher: Es un launcher Open Source preparado para disponer de nuestro catálogo de Epic, GOG y Amazon Prime. No obstante, también podemos configurar aplicaciones de terceros y con ello instalar otros launchers oficiales. Una vez instalamos el launcher, configuramos las cuentas (en la columna de la izquierda están las diferentes opciones entre ellas la gestión de cuentas, ajustes, gestor de wine, etc...). Una vez configuradas las cuentas, en Biblioteca tendremos todo el catálogo de juegos de estas tiendas que tengamos en propiedad y en Tiendas podemos acceder al catálogo para adquirir nuevos juegos.
En Gestor de Wine podemos instalar las útlimas versiones de WineGE y ProtonGE. Lo recomendable es tener la última versión de ambos porque hay juegos que van mejor con uno y otros que van mejor con otros.
En Ajustes, aparte de la configuración típica como elegir carpetas alternativas de instalación, la versión de Wine por defecto, etc... en Avanzado hay que tener actualizado el EOS Overlay para tener sincronizado los juegos, los logros y nuestros contactos con los servidores de Epic. Algunos juegos no funcionan si ésta no está actualizada.
Para instalar los juegos desde la biblioteca no es difícil, hay que elegir la versión de Wine que deseas, cambiar la carpeta en función de donde lo quieras instalado, y darle a instalar. Es más o menos igual en todas las tiendas aunque, una vez instalado el juego, a veces se requieren más acciones para hacerlos funcionar. Tengo un hilo donde explico cómo instalar Alan Wake II y tambien tenéis la página ProtonDB (se puede acceder desde el launcher).
Para instalar juegos de otros launchers o “copias de seguridad” de juegos es necesario Añadir Juego de manera manual en una de las opciones que tenemos en la pestaña de Biblioteca. Esto no es una tarea para nada difícil. Rellenamos todos los campos (al poner el título de la app o el juego en cuestión descargará la carátula automáticamente) y al llegar a Seleccionar Ejecutable, omitimos este apartado y nos vamos más abajo a Ejecutar Instalador Primero. Seleccionamos el instalador del launcher o del juego que queramos instalar y lo instalamos. Una vez acabado el proceso de instalación, ya sí volvemos arriba a la opción Seleccionar Ejecutable, vamos a la ruta donde instalamos el juego o el launcher y con eso ya estaría.
Con respecto a los launchers como Ubisoft Connect, EA Play, o Rockstar Games Launcher, éstos funcionan bien en Linux con la excepción de EA Play que se rompe periodicamente aunque se suele parchear proton en muy pocos días (a veces solo horas).
Y ya está, con esto podemos empezar nuestra andadura en el gaming en GNU/Linux. Esto es solamente el comienzo, a partir de aquí queda un aprendizaje que se va obteniendo poco a poco pero eso sí, pronto se tiene bastante naturalizado y no es tan distinto a hacerlo en Windows (aunque lo parezca). No he querido entrar demasiado en detalle y hay cosas que seguramente me he saltado porque, de tan naturalizado que lo tengo, es posible que las haya obviado sin darme cuenta...En fin, ante cualquier duda, estaré encantado de intentar ayudar pero hay que entender también que es necesario tener un proceso de buscar información por uno mismo porque, ni yo lo sé todo, ni puedo saber cómo va a funcionar en un futuro... No es de extrañar que en un tiempo tenga que actualizar la información.
Me ha quedado un poco largo, espero que @cobito no me mate...