Steam Machine hoje, Steam Phones amanhã
- A Valve foi identificada como o principal agente por trás do uso de tecnologias open source para permitir que jogos de Windows para PC rodem em dispositivos baseados em Arm
- Ao combinar Proton e o emulador Fex, ela torna possível executar jogos de Windows x86 em dispositivos Arm baseados em Linux
- Desde 2016, a Valve contrata diretamente e financia desenvolvedores do Fex, levando adiante como meta de longo prazo a compatibilidade com Arm
- A versão Arm do SteamOS mantém a mesma estrutura da versão atual e oferece suporte à execução de jogos por meio do Proton e do Fex
- Essa tecnologia é vista como a base para rodar jogos de PC em vários tipos de dispositivos Arm, como smartphones, notebooks e desktops
A estratégia da Valve para games em Arm
- A Valve desenvolve e apoia tecnologias open source para executar jogos de Windows na arquitetura Arm sem necessidade de porting
- Os componentes centrais são o Proton (camada de compatibilidade Windows-Linux) e o Fex (emulador de conversão x86-Arm)
- O Proton é baseado em Wine e converte chamadas de API do Windows para o ambiente Linux
- O Fex faz a conversão em tempo real de código x86 para código Arm por meio de JIT (Just-In-Time)
- A Valve é a fundadora de fato e principal financiadora do projeto Fex, tendo contratado pessoal-chave desde o início do desenvolvimento
- Desde 2016~2017, iniciou um esforço de longo prazo com desenvolvedores open source para garantir compatibilidade com Arm
- O principal desenvolvedor do Fex, Ryan Houdek, trabalha em tempo integral com apoio da Valve
Steam Frame e a expansão do ecossistema Arm
- O headset Steam Frame não é apenas um dispositivo de VR, mas uma plataforma tecnológica para rodar jogos da Steam em dispositivos baseados em Arm
- A mesma tecnologia pode ser usada em Samsung Galaxy, Google Pixel, notebooks gamer com Arm e outros dispositivos
- O repórter executou Hollow Knight: Silksong em um smartphone Galaxy, usando essa tecnologia diretamente
- A Valve usa a versão Arm do SteamOS para atender a vários formatos, como handhelds, notebooks e desktops
- Mantém a mesma base em Arch Linux, com a mesma composição incluindo Proton e Fex
- O Proton para Arm é compilado em código Arm e integrado ao Fex
Estrutura técnica e funcionamento
- O Proton é uma extensão do Wine que implementa, em Linux, as APIs necessárias para executar jogos feitos para Windows
- Converte chamadas de API do Windows, como DirectX, DirectSound e entrada USB, em APIs do Linux
- Inclui camadas de conversão gráfica como DXVK (D3D11→Vulkan) e VKD3D (D3D12→Vulkan)
- Processo de execução em ambiente Arm
- O Proton analisa segmentos de código e, se forem x86, os encaminha ao Fex
- O Fex converte o código x86 em código Arm e o executa
- Quando há chamadas de API, o sistema alterna para código nativo Arm para minimizar perda de desempenho
A filosofia de desenvolvimento e os objetivos da Valve
- O objetivo da Valve é evitar que desenvolvedores de jogos desperdicem tempo com porting por arquitetura
- A visão da empresa é que “o trabalho de porting é esforço desperdiçado do ponto de vista do valor da biblioteca”
- Assim, os desenvolvedores podem se concentrar em melhorar a qualidade dos jogos e criar novos títulos
- A Valve aplica à transição para Arm a experiência de sucesso com jogos em Linux no Steam Deck
- Destaca a escalabilidade dos games baseados em Linux e a evolução contínua do ecossistema open source
Perspectivas futuras e possibilidade de expansão para mais dispositivos
- A Valve espera uma diversificação dos dispositivos SteamOS baseados em Arm
- Cita possibilidades em vários formatos, como notebooks ultraleves, laptops de alto desempenho, handhelds e desktops
- Também vê possibilidade de desktops baseados em SoCs grandes, como os chips da série M da Apple
- O SteamOS for Arm não será um sistema operacional separado, mas manterá a mesma base de código
- No futuro, a empresa pretende ampliar o suporte do SteamOS em diferentes dispositivos Arm por meio de mais parcerias com OEMs
- Por enquanto, não há plano comercial concreto, e a empresa segue focada no desenvolvimento do Steam Machine e do Steam Deck existentes
Outros elementos técnicos
- O recurso de executar apps Android no Steam Frame não usa uma instalação completa do Android, mas uma camada de compatibilidade semelhante ao Proton
- Fornece apenas as bibliotecas necessárias para executar os jogos, permitindo rodar o código Arm como está
- Sobre um possível lançamento de um SteamOS Phone, a Valve disse que “não descarta a possibilidade, mas isso não é o foco principal no momento”
- Hoje, o foco está em melhorar a experiência de games na sala de estar, em handhelds e no desktop
O lugar do Arm nos games
- A Valve avalia que o Arm é competitivo em faixas de baixo consumo e desempenho intermediário
- Especialmente vantajoso abaixo do nível de desempenho do Steam Deck
- Em vez de ditar a direção do mercado, o objetivo é construir uma plataforma que suporte todas as opções
4 comentários
Sou usuário do Steam Deck, e sinto que o que a Valve tem feito ultimamente é algo em que cliente, empresa e indústria podem todos sair ganhando.
Como é uma empresa privada do Gabe Newell, acho que isso talvez permita que eles mantenham esse tipo de escolha de forma consistente numa perspectiva de longo prazo.
Eu também estou comemorando. Até agora era difícil sair do Windows por causa dos jogos. Muito obrigado.
(Pelo menos na área de jogos,) eu também estou ansioso pelo dia em que poderemos nos libertar completamente da sombra do Windows.
Comentários do Hacker News
Tudo o que a Valve faz pelo ecossistema Linux está tendo um impacto enorme
A ponto de até a piada do HL3 já dar vergonha de usar como brincadeira, de tanto que a empresa tem feito sinceramente pela comunidade
Vídeo relacionado
A Valve está executando muito bem a estratégia de monetizar complementos — ou seja, a estratégia de abrir as camadas acima e abaixo
A maioria dos jogos multiplayer modernos não funciona na camada de tradução por causa do anti-cheat, mas há algumas exceções. Anti-cheats em modo usuário às vezes funcionam normalmente no Wine, e existem jogos que adicionaram suporte ao Proton
areweanticheatyet.com
Eu queria que a Valve eliminasse de vez Wayland/X11/Xwayland. O Wayland ainda tem suporte insuficiente de apps e não é compatível com GPUs NVIDIA. O X11 é velho demais, e o Xwayland parece juntar o pior dos dois mundos
Eu queria ver o SteamOS também no MacOS. O Steam roda bem no meu Mac Mini, mas seria ótimo se todos os jogos fossem compatíveis
Fico curioso sobre a data de lançamento da próxima geração do Steam Deck. Espero 2025, mas acho mais provável que seja 2026. Jogando GTA: San Andreas no Switch, percebi que agora preciso de um aparelho mais potente
Artigo relacionado
Fonte
A Microsoft tentou várias vezes fazer Windows on ARM, mas fracassou. Já a Valve parece ter grande chance de dar certo
Fico curioso sobre quanto a eficiência energética do ARM realmente muda na prática, especialmente sob carga de jogos
Se a Valve tornar o SteamOS compatível com todos os programas Windows, será que ele poderia substituir o Windows?
Se a licença do ARM for hostil, não seria melhor explorar a arquitetura RISC-V?