GNU/Linux en el mundo de los videojuegos ¿En qué punto estamos?

Ver el tema anterior Ver el tema siguiente Ir abajo

GNU/Linux en el mundo de los videojuegos ¿En qué punto estamos?

Mensaje por shiba87 el Dom Dic 13, 2015 6:10 am


Este año, como muchos sabemos, ha sido probablemente el punto álgido en la historia de GNU/Linux en lo que respecta a videojuegos. Hemos visto casi duplicarse el número de títulos nativos y "nativos" con respecto al años pasado, han sido lanzados Steam OS y Steam Machines, así como los esperadísimos periféricos de Valve, tenemos Vulkan, la nueva API gráfica del grupo Khronos a la vuelta de la esquina, Nvidia ha empezado tímidamente a abrirse con los desarrolladores de nouveau, AMD parece que por fin se ha comprometido en algo con AMDGPU... en definitiva, un año de grandes cambios que no han dejado indiferente a nadie.

Sin embargo, como tantas veces he dicho durante el mismo periodo, ahora mismo estamos en un punto de inflexión. Las cosas están cambiado para mejor, pero aún nos queda mucho camino por recorrer antes de cantar definitivamente, victoria.

Los desarrolladores de Hardware, los problemas de la industria del videojuego, las horrendas políticas y decisiones de Microsoft, pero sobre todo la gran apuesta de Valve, han sido los detonantes que nos han llevado hasta donde estamos hoy. Este primer impulso, esta apuesta declarada y sincera, cual efecto dominó, ha hecho que poco a poco se vayan sumando y participando más estudios, portadores, desarrolladores, fabricantes, testers... una auténtica revolución digital que en breve supondrá un antes y después no sólo para GNU/Linux, sino para la industria del videojuego en General.

Pero como ya dije, aún quedan muchísimas cosas por hacer y, por supuesto, grandes detractores que intentarán que no les pisen el negocio empleando para ello los medios que hagan falta. Debemos ser conscientes de cómo es la situación actual y, aunque muchos no podamos ser de gran ayuda, siempre podremos aportar nuestro granito de arena para ayudar a que sigamos avanzando.


El estado de los juegos "nativos" para GNU/Linux

Mucho se ha hablado de este tema, de hecho, no hace mucho que Ars Technica publicó un sesgado y manipulado estudio comparativo al respecto aclamando la supremacía de otro sistema que es el que mayormente paga sus facturas y que, si bien no podemos decir que es del todo falso, sí que hay que saber interpretarlo para poder sacar conclusiones coherentes a partir del mismo.

EN primer lugar debemos tener en cuenta que la industria del videojuego, aunque parezca lo contrario, se mueve muy lentamente y aunque ya tenemos a nuestra disposición una nueva generación de hardware y consolas, los títulos con los que nos están abasteciendo siguen siendo más de la generación anterior que de esta. Los motores gráficos de "nueva generación", Unreal Engine 4, Cryengine 4, Unigine Engine 2, Source 2... apenas se han utilizado en un par de títulos o no se han usado en absoluto, por tanto, los desarrolladores de videojuegos que quieren expandirse a otras plataformas se ven en la tesitura de no contar con motores gráficos de antigua generación que no fueron diseñados con ese fin.

Llegados a este punto hay varias opciones, actualizarse a los nuevos motores, rediseñar por completo el motor gráfico utilizado y optimizarlo para hacerlo funcionar con OpenGL o, la más recurrida, hacer alguna chapuza para salir al paso.

Dado que los videojuegos que ya llevan unos años en el mercado no son susceptibles de ser rediseñados o recibir una actualización completa de su motor gráfico, la opción más clara para estudios y desarrolladores es realizar alguna chapuza que les permita conseguir su objetivo de ser multiplataforma sin perder demasiado tiempo y dinero en el intento.

Incluso para los títulos lanzados recientemente o a punto de ser lanzados se cumple esto último, porque si bien son novedades, su desarrollo se remonta años atrás, cuando aún no se pensaba en el desarrollo multiplataforma.

De hecho, en la industria actual existen vicios muy feos a la hora de desarrollar software, que podrían resumirse en:

Trabajar únicamente para la plataforma más limitada/desfavorable y hacer ports y adaptaciones una sobre otra para el resto de las plataformas a las que se aspire. Es decir, que actualmente los usuarios de Play Station 4 ven títulos fresco y recién desarrollados para su plataforma, los usuarios de Windows reciben un port de esta versión, con sus limitaciones y sus chapuza y nosotros recibiríamos un tercer refrito de ésta última, sumando limitaciones de los dos anteriores o, en el caso de ser un título que también aparezca en OS X, cuyo soporte poara OpenGL es muy limitado, recibiríamos el 4º port extremadamente capado y limitado.

Por mucho potencial que tenga GNU/Linux, por mucho que haya mejorado en tema de drivers, APIs, frameworks... la realidad es esta y hasta que la industria no se adapte a los nuevos tiempos tendremos que ser transigentes con algunas cosas y ser conscientes que en la mayoría de los casos no vamos a poder disfrutar de una experiencia 100% plena en comparación con otras plataformas. Irónicamente, dada la "calidad" de los desarrollos actuales muchas veces pasará desapercibido para la mayoría Crying or Very sad

Dentro de los ports o adaptaciones tenemos un amplio abanico de posibilidades, entre los que destacan los siguientes:


Ports realizados por el propio estudio


Este tipo de adaptación es realizada por el propio estudio que desarrolló el juego original, aunque no necesariamente por el mismo equipo de desarrolladores, y los medios empleados para realizar la tarea varían enormemente según el caso. Desde un equipo profesional completo dedicado a dicha tarea a contar con un único becario en prácticas que tiene que lidiar con todo el trabajo.

Como ya dijimos antes, en ningún caso se llevará a cabo el rediseño del título para trabajar en una nueva plataforma bajo otras APIs, simplemente se modificarán las partes que sean necesarias y se utilizarán algunas capas de abstracción para aquellas donde no resulte rentable.

Para esto existen herramientas como ToGL, IndirectX y otras muchas que ayudan a los desarrolladores a transformar las partes que ha sido diseñadas exclusivamente para DirectX en su equivalente OpenGL de manera sencilla y prácticamente automática. Evidentemente, aunque el resultado siempre serán binarios nativos, esta conversión no 100% eficaz y siempre tendrá un impacto mayor o menor en el rendimiento gráfico final.

Un claro ejemplo de esto son los títulos de Valve, Left 4 Dead 2, Half Life 2, Dota 2... cuyas adaptaciones ha sido realizada por los creadores original y que ya nos han mostrado en más de una ocasión que su rendimiento incluso ha mejorado y ya en algún caso como Dota 2 se han atrevido a actuliazar el motor gráfico a uno de nueva generación. Pero insisto en que no siempre es así


Ports subcontratados


Esta es, sin duda, la opción más recurrida últimamente. Estaríamos ante la misma situación que en el caso anterior, un port nativo en el que se emplean algunas herramientas de conversión que no son del todo eficaces, pero que es realizado por un estudio que no tiene nada que ver con el desarrollo original. Este sería el caso de Feral Interactive, Aspyr Media o de grandes veteranos como Ryan Gordon o Timothee besset, que son subcontratados para obrar la magia de llevar un software a otras plataformas.

Este método tiene sus ventajas, ya que son equipo de expertos que se dedican en exclusiva a este trabajo, pero al mismo tiempo ocurre que son personas al desarrollo original y están forzados a trabajar con código escrito por otros (cono todo lo que eso implica).

En general este tipo de ports suelen ser bastante aceptables, no sólo por la experiencia que tienen los que lo realizan, sino porque una vez lanzado seguirán teniendo alguien que los respalde y corrija posibles problemas.

Ejemplos en este caso tenemos Middle earth: shadow of Mordor, Grid Autosport, Alien Isolation, Sid Meier’s Civilization: Beyond Earth, Borderlands Pre sequel... títulos muy logrados que si bien no podemos esperar que estén 100% optimizados podemos estar seguros que al menos funcionaran bien y nos permitirán jugar de manera adecuada.

Otro ejemplo opuesto de este tipo de ports lo tenemos con Batman arkham knight, un título que ha dado muchísimo de que hablar este año, no sólo por ser el cierre de la exitosa saga desarrollada por Rocksteady Studios, sino por haber sido portado a Windows de manera tan horrible y nefasta por Iron Galaxy Studios,que acabó siendo retirado del mercado, para ser relanzado recientemente en un estado no muy diferente al del primer port, que fue llevado a cabo desde un desarrollo exclusivamente PS4 (OpenGL) a WIndows (DirectX) y cuya adaptación para GNU/Linux iba a dejarse en manos de un tercer estudio, Feral Interactive, que ya ha dicho que no se ensuciarán las manos con semejante esperpento y seguirán trabajando a partir del original para intentar traernos una versión jugable, posiblemente durante el segundo trimestre de 2016.

Este caso es posiblemente el más representativo que podemos encontrar de cómo funciona la industria a día de hoy y de lo que nos espera a corto/medio plazo hasta que la transición se complete.


Ports ficticios


Si bien ya he dicho que es muy raro ver un título realmente nativo para GNU/Linux y tenemos que resignarnos a contar con ports que son mayormente nativos pero con algunas chapuzas, en este último caso hablamos directamente de títulos que no son ports en absoluto.

Otro de los métodos a los que recurren los grandes estudios a la hora de llevar su software a otras plataformas consiste en no esforzarse en absoluto por ofrecer software nativo y en lugar de ello utilizar Wrappers que hagan de intermediarios entre su software original sin modificar y la plataforma en la que quieren ejecutarlo. Sé que esto puede resultar un poco complicado de entender, pero creo que puedo resumirlo en única palabra de tal manera que todo el mundo lo entienda. WINE.

No obstante, aunque es un clásico encontrar aplicaciones que dicen ser nativas y que venden como tal y que al observarlas se ve claramente como corren sobre una versión muy concreta de Wine, en la industria del videojuego quien se está encargando de esto es un Wrapper muy similar desarrollado por Virtual Programming llamado eON.

Si bien para el estudio es una forma rápida y barata de llevar su software a otras plataformas y, al igual que con Wine, hay casos en los que las cosas parecen funcionar bien, lo más habitual es que este tipo de estrategias se caractericen por sufrir todo tipo de errores extraños, crasheos, fallos inexplicables y una experiencia de juego... digamos que "sorprendentemente entretenida e imprevisiblemente cautivadora" Razz

Es aquí donde debemos plantarnos y decir NO. Antes dije que había que ser algo transijentes dada la situación actual y apoyar a aquellos que hacen un esfuerzo por traernos software nativo a la plataforma del Ñu y el Pingüino.

Sin embargo estaremos de acuerdo en que esto último no sólo no es un esfuerzo, sino que es directamente un engaño, por tanto no deberíamos ser partícipes para que no se perpetúe esta tendencia. Por mucho juegos que de manera "rápida" podría suponer para nosotros, el coste a pagar es demasiado elevado. Queremos juegos, sí, pero juegos con un mínimo de calidad.



El renacer de las APIs gráficas


Hemos hablado largo y tendido durante el último año sobre Vulkan, la API gráfica abierta, multiplataforma y a bajo nivel del grupo Khronos, que llega para sustituir a la veterana OpenGL con la intención de llevar los desarrollo gráficos al nivel tecnológico actual. Capacidad para exprimir aún más el hardware para obtener mejor rendimiento, desarrollos más sencillos, multiplataforma, bajo un estándar abierto ideado por los pesos pesados de la industria partiendo de la idea original que tuvo AMD con Mantle.

Smartphones, consolas, televisores, PCs... todos se beneficiarán de este salto de gigante en lo que respecta a la industria de los gráficos renderizados por ordenador.

Pero volvemos a lo mismo que hemos estado tratando desde el principio. Estamos en punto de inflexión donde todo está cambiando, pero aún no lo ha hecho. Vulkan no llegará mañana, ni dentro de un mes ni de dos, será una transición lenta y paulatina que terminará con el nacimiento de una nueva industria, nuevas formas de desarrollo y software que responderá a esta nueva tendencia, para bien o para mal, aunque todo apunta a que el cambio será positivo. Pero para eso, aún tendremos que esperar un poco más


Los principales implicados



Sin duda alguna quien dio el empujón definitivo que hacía falta para que todo esto ocurriera y que ha invertido muchísimo en GNU/Linux, al punto de crear su propia distribución, Steam OS y empezar a comercializar equipos destinados a jugar desde GNU/Linux, Steam Machines, a todo el catálogo disponible en su tienda de distribución digital de videojuegos Steam.

El lanzamiento, que se produjo durante el pasado mes de Noviembre, fue bastante silencioso y, al mismo tiempo, fue salpicado por la polémica suscitada por muchos medios tecnológicos que distan mucho de ser imparciales y/o profesionales. Lo cierto es que tanto Steam OS como las Steam Machines acaban de nacer y aún nos queda mucho antes de ver cómo se hacen un hueco en el mercado. Aún así y a pesar de todo, las ventas ventas tanto de equipos como de periféricos han sido realmente buenas, lo que se opone frontalmente a lo dicho por tantos detractores.

Otra cosa que he podido observar, que se repite mes tras mes desde hace dos años y que demuestra que el ser humano es el único animal que tropice no dos, sino inumerables veces con la misma piedar, son los artículos haciendo referencia a una ficticia cuota de mercado de jugadores linuxeros que ¡Fíjate que curiosa, sorprendente y cruel casulidad del destino! Se ha mantenido inamovible en el 1%.

Hace tiempo que Valve respondió a esto de una manera clara, pero parece que muchos siguen sin enterarse y lo utilizan como dato significativo para justificar, probar o desmentirr las más disparatadas teorías.

Lo cierto es que los datos que se recogen en las estadísticas de Steam son puramente anecdóticos y no pueden ser tomados al pie de la letra. La recopilación de datos se realiza de manera aleatoria a modo de "sondeo" que busca hacerse una idea de las especificaciones de los equipos de los jugadores que utilizan regularmente Steam, por lo que la inmensa mayoría de los usuarios de Steam no han sido jamás incluidos y su hardware/software es, tanto para Valve como para nosotros, un misterio. Al mismo tiempo, la propia compañía ya confirmó que, en lo que respecta a la parte específica para GNU/Linux, esto iba aún más allá y, aunque han hecho varios intentos, no han conseguido una manera eficaz de "medir" a los usuarios linuxeros, dada la inmensa variedad de distribuciones, configuraciones, versiones, etc, por lo que la mayoría de los linuxeros que, por casualidad, son contabilizados, finalmente tampoco acaban apareciendo representados en las estadísticas.

Las estadísticas directas de venta tampoco son fiables, dado que están sujetas a muchísimas variables, juegos comprados antes de contar con versión nativa para GNU/Linux no cuentan,  si han sido jugados durante X tiempo en otra plataforma, tampoco, si se obtuvieron a través de un medio ajeno a Steam y luego autentificados en éste tampoco les es posible saber dónde tenías pensado jugarlo al comprarlo... En definitiva, es triste ver como después de 24 años todavía sigamos erre que erre con el cuento del 1% :icon_ouch:





Ampliamente conocida por todo linuxero amante de los videojuegos, la californiana es, por desgracia, la única que a día de hoy permite disfrutar en GNU/Linux de los títulos de última generación . Si bien lo hace a través de software mayormente privativo, algo que no nos agrada demasiado, es una compañía que casi siempre cumple en cuanto a rendimiento, especificaciones, soporte y la adopción temprana de nuevas tecnologías, al punto de asimilarlas antes de ser anunciadas oficialmente.

Al mismo tiempo, su carácter cerrado hace que no se integre del todo en el ecosistema linuxero, tanto a nivel de usuario como entre los desarrolladores, aunque parece que durante los últimos años ha empezado a volverse más abierta, aunque de manera tímida y principalmente en lo que respecta a su gama de procesadores Tegra y no tanto a sus series de escritorio Geforce y Quadro, aunque sí es cierto que los precarios controladores gráficos libre Nouveau han avanzado mucho en el último año gracias a varios aportes de la propia Nvidia.

Seguimos ante una propuesta privativa, con todo lo que ello implica, pero sin duda alguna, a la hora de rentabilizar una gran inversión como lo es una tarjeta gráfica dedicada, por ahora sigue siendo nuestra única opción.





Si bien Intel se limita a ofrecer gráficas integradas en sus procesadores que no se acercan ni remotamente al rendimiento que pueden ofrecer las GPS dedicadas, su caracter Open Source es de sobra conocido por los linuxeros que no tienen grandes necesidades a nivel de gráficos y pueden desarrollar su actividad diaria con este tipo de gráficas sin ningún problema de soporte.

Los controladores para este tipo de Hardware no están a la vanguardia en cuanto a tecnología o especificaciones de OpenGL, pero es que tampoco hace falta dado el uso al que están destinadas. Eso sí, al igual que Nvidia, el soporte para Vulkan está más que asegurado antes de su salida.





Nos adentramos en un terreno inhóspito que hará que se levante más de una ampolla y que tampoco podremos tratar en profundidad, porque no acabaríamos nunca.

AMD ha sido, durante mucho tiempo, el patito feo para todos los linuxeros. Controladores privativos a la par que ineficientes, problemáticos, carentes de opciones, que llegan tarde y mal, que descontinúan series relativamente recientes de hardware muy temprano dejando a sus usuarios con un palmo de narices... y una contraparte de controladores libres muy trabajados por parte de la comunidad pero que no se acercan a brindarnos el rendimiento y características que esas GPUs podrían darnos.

Muchos años de mal soporte, de tener que estar saltando entre controladores privativos y libres para aspirar a poder ejecutar un tipo de aplicación u otra, de sufrir con cada salida de una nueva versión de X.org o del propio Kernel Linux por no tener soporte hasta meses o incluso años después... han sido las razones por las que, la mayoría de los linuxeros que quieren disfrutar de la experiencia de juego nativa en la plataforma de Ñu y el Pingüino, no tocarían una gráfica AMD ni con un palo.

Durante el último año también han cambiado muchísimo las cosas para AMD y se ha hablado largo y tendido de su nueva propuesta, los Controladores AMDGPU, una apuesta de unificación de esfuerzo entre desarrolladores libres y privativos que viene a cambiar las cosas o, al menos, eso es lo que nos han dicho.

No obstante, esto ha llegado tarde, muy muy tarde y si en el mundo de los videojuego estamos antes un inminente cambio, en lo que respecta a AMD aún estamos empezando. AMDGPU implica grandes cambios, pero también la ruptura definitiva entre lo moderno y lo antiguo. Sólo las gráficas de nuevas generación y las que salgan a partir de ahora podrán aspirar a beneficiarse de las bondades de los nuevos controladores, algo que a priori tiene mucha lógica desde el punto de vista del desarrollo, pero que para los usuarios cuyos equipos tengan más de año y medio les sentará como una auténtica puñalada.

Así todo y aunque el nuevo enfoque de los controladores de AMD supone un antes y un después, facilitará muchísimo las cosas en todos los aspectos y unificará esfuerzos, seguimos sin saber si ciertos problemas de siempre podrán o no solucionarse, entre ellos el pobre rendimiento de estas gráficas en GNU/Linux. La unificación supone mejora, sí, pero si hasta ahora ninguna de las dos partes ha conseguido un rendimiento óptimo ¿Se llegará a conseguir con AMDGPU?

Otro punto donde también ha supuesto una desilusión para usuarios y gamers es, precisamente Vulkan. AMD ya confirmó que la nueva API gráfica no será soportada den entrada por los nuevos controladores y que el soporte llegará inicialmente a través de los Catalyst (Crimson) de manera tardía y, posteriormente comenzarán los trabajos para incorporarlo al controladores unificado.

Puede sonar confuso, incongruente o incluso contradictorio, pero como ya dije antes, esto acaba de empezar y ahora mismo hay muchísimas más dudas que respuestas y, si para otras cosas que ya llevan años de desarrollo detrás aún vamos a tener que esperar, en el caso de AMD y su prometedora propuesta de futuro, la espera será aún mayor.

En el caso de las APUS, si bien no serán tan fáciles de domar como las Intel, los controladores libres siempre estarán ahí para echarnos una mano y, dado que no le pedimos grandes cosas, la falta de rendimiento y características puede pasar un poco desapercibidas para usuarios de a pie.

Sin embargo, a la hora de plantearse invertir una gran suma de dinero, esperando obtener a cambio un rendimiento acorde... las Radeon siguen sin ser una alternativa viable y no apuntan a que vayan a serlo en un futuro cercano.


Reflexión ¿Final?

Si han llegado hasta aquí, tendrán el mismo sabor agridulce que tengo yo mientras escribo esto, pero tampoco puedo maquillar las cosas para hacer ver que estamos en los mundos de Yupi o en el más profundo y frío abismo, lo cierto es que estamos justo en medio, sufriendo una dolorosa pero necesaria transición que no sabemos cuánto llevará, pero que apunta a que será algo muy positivo para la industria, para los usuarios en general, pero sobre todo para GNU/Linux.

Nos quedan un par de años de incertidumbre, de grandes alegrías y tristes decepciones que nos llevarán finalmente hasta una estabilidad que esperamos que sea la que todos deseamos. Lo que no se puede negar es que el avance qe podemos apreciar hasta el momento en todos los frentes es, simplemente, espectacular, así que hagamos lo que buénamente podamos para que sigamos avanzando en el mismo sentido, aunque no sea aportando fondos o código, simplemente apoyando a quienes nos apoyan y condenando lo que haya que condenar para que las cosas mejoren.

Y por último y más importante, sean críticos y no se crean la mayoría de las cosas que les cuentan, especialmente si provienen de cierto perro forero linuxero que no hace más que desvariar lol!
avatar
shiba87
Squire
Squire

Mensajes : 306
Fecha de inscripción : 12/07/2012
Localización : /home/shiba

http://gnulinuxvagos.es

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.