Steam Machine hoy, Steam Phones mañana
- Se confirma que Valve es el actor clave que aprovecha tecnologías de código abierto para hacer posible ejecutar juegos de PC para Windows en dispositivos basados en Arm
- Al combinar Proton y el emulador Fex, logra que juegos de Windows para x86 puedan ejecutarse en dispositivos Arm basados en Linux
- Desde 2016, Valve ha contratado directamente y financiado a los desarrolladores de Fex, impulsando la compatibilidad con Arm como un objetivo de largo plazo
- La versión de SteamOS para Arm mantiene la misma estructura que la actual y permite ejecutar juegos mediante Proton y Fex
- Esta tecnología se considera la base para ejecutar juegos de PC en distintos dispositivos Arm, como smartphones, laptops y desktops
La estrategia de Valve para gaming en Arm
- Valve desarrolla y respalda tecnologías de código abierto para ejecutar juegos de Windows en arquitectura Arm sin necesidad de portarlos
- Los componentes centrales son Proton (capa de compatibilidad Windows-Linux) y Fex (emulador de traducción x86-Arm)
- Proton, basado en Wine, traduce las llamadas a la API de Windows para adaptarlas al entorno Linux
- Fex realiza una conversión en tiempo real de código x86 a código Arm mediante JIT (Just-In-Time)
- Valve es el fundador de facto y principal financiador del proyecto Fex, y contrató personal clave desde las primeras etapas del desarrollo
- Desde 2016~2017 comenzó un desarrollo de largo plazo junto con desarrolladores de código abierto para asegurar compatibilidad con Arm
- Ryan Houdek, desarrollador principal de Fex, trabaja a tiempo completo gracias al apoyo de Valve
Steam Frame y la expansión del ecosistema Arm
- El headset Steam Frame no es solo un dispositivo VR, sino una plataforma tecnológica para ejecutar juegos de Steam en dispositivos basados en Arm
- La misma tecnología puede usarse en Samsung Galaxy, Google Pixel, laptops gamer con Arm y más
- El periodista ejecutó Hollow Knight: Silksong en un smartphone Galaxy, probando directamente esta tecnología
- Valve apunta a distintos formatos con la versión Arm de SteamOS: handhelds, laptops y desktops
- Se mantiene sobre la misma base de Arch Linux, con la misma configuración que incluye Proton y Fex
- Proton para Arm está compilado como código Arm y se integra con Fex
Estructura técnica y funcionamiento
- Proton es una extensión de Wine que implementa en Linux las API necesarias para ejecutar juegos de Windows
- Traduce llamadas a API de Windows, como DirectX, DirectSound y entrada USB, hacia API de Linux
- Incluye capas de traducción gráfica como DXVK (D3D11→Vulkan) y VKD3D (D3D12→Vulkan)
- Proceso de ejecución en entorno Arm
- Proton analiza los segmentos de código y, si detecta código x86, los envía a Fex
- Fex convierte el código x86 a código Arm y luego lo ejecuta
- Cuando hay llamadas a API, cambia a código nativo Arm para minimizar la pérdida de rendimiento
La filosofía de desarrollo y el objetivo de Valve
- Valve busca evitar que los desarrolladores de juegos desperdicien tiempo porteando por arquitectura
- Su postura es que “el trabajo de portabilidad es un esfuerzo desperdiciado desde la perspectiva del valor de la biblioteca”
- La idea es que los desarrolladores puedan concentrarse en mejorar la calidad de los juegos y crear nuevos títulos
- Valve quiere aplicar a la transición hacia Arm la experiencia exitosa del gaming en Linux con Steam Deck
- Destaca la escalabilidad del gaming basado en Linux y la evolución continua del ecosistema open source
Perspectivas a futuro y expansión a otros dispositivos
- Valve espera una mayor diversidad de dispositivos SteamOS basados en Arm
- Menciona posibilidades en formatos como ultraligeras, laptops de alto rendimiento, handhelds y desktops
- También ve potencial en diseños de desktop basados en SoC grandes, como los chips serie M de Apple
- SteamOS for Arm no será un sistema operativo aparte, sino que mantendrá la misma base de código
- A futuro, planea ampliar el soporte de SteamOS en distintos dispositivos Arm mediante colaboraciones con OEM
- Por ahora no hay un plan comercial concreto, y el enfoque sigue puesto en Steam Machine y Steam Deck
Otros elementos técnicos
- La función de ejecutar apps Android en Steam Frame no incorpora Android completo, sino que se implementa con una capa de compatibilidad similar a Proton
- Solo proporciona las bibliotecas necesarias para ejecutar juegos y permite correr código Arm tal cual
- Sobre la posibilidad de lanzar un SteamOS Phone, Valve dijo que “no descarta la posibilidad, pero no es el foco principal por ahora”
- Actualmente se concentra en mejorar la experiencia de gaming en sala, handheld y desktop
El lugar de Arm en el gaming
- Valve considera que Arm es competitivo en segmentos de bajo consumo y rendimiento medio
- Resulta especialmente favorable por debajo del nivel de rendimiento de Steam Deck
- Más que marcar la dirección del mercado, su objetivo es construir una plataforma que soporte todas las opciones
4 comentarios
Soy usuario de Steam Deck, y siento que lo que Valve está haciendo últimamente es el tipo de cosas donde clientes, empresa e industria pueden salir ganando todos.
Como es la empresa personal de Gabe Newell, creo que por eso pueden seguir tomando este tipo de decisiones de forma sostenida a largo plazo.
Yo también lo estoy celebrando. Hasta ahora era difícil dejar Windows por los juegos. Muchas gracias
(Al menos en el gaming) yo también espero con ganas el día en que podamos salir por completo de la sombra de Windows.
Opiniones de Hacker News
Todo lo que Valve está haciendo por el ecosistema Linux realmente está teniendo un impacto enorme
Ya hasta da pena seguir usando el meme de HL3 como chiste, considerando todo lo que de verdad han hecho por la comunidad
Video relacionado
Valve está ejecutando muy bien la estrategia de monetizar complementos (es decir, abrir las capas de arriba y de abajo)
La mayoría de los juegos multijugador modernos no funcionan en capas de traducción por el tema del anti-cheat, pero hay algunas excepciones. Los anti-cheat en usermode a veces funcionan tal cual en Wine, y también hay juegos que agregaron soporte para Proton
areweanticheatyet.com
Ojalá Valve eliminara por completo Wayland/X11/Xwayland. Wayland todavía tiene poco soporte de apps y no es compatible con GPUs NVIDIA. X11 es demasiado viejo, y Xwayland se siente como una mezcla de las desventajas de ambos mundos
Me gustaría ver SteamOS también en MacOS. Steam corre bien en mi Mac Mini, pero sería genial si todos los juegos estuvieran soportados
Tengo curiosidad por la fecha de lanzamiento de la próxima generación de Steam Deck. Espero 2025, pero creo que es más probable 2026. Después de jugar GTA: San Andreas en Switch, sentí que ya hace falta un dispositivo más potente
Artículo relacionado
Fuente
Microsoft ha intentado varias veces con Windows on ARM, pero ha fracasado. En cambio, Valve sí parece tener posibilidades de lograrlo
Me pregunto cuánto cambia realmente la eficiencia energética de ARM. Sobre todo bajo carga de juego
Si Valve lograra hacer SteamOS compatible con todos los programas de Windows, ¿podría reemplazar a Windows?
Si la licencia de ARM es poco amigable, ¿no sería mejor explorar la arquitectura RISC-V?