Pular para o conteúdo principal

O futuro dos jogos tem nome, e ele se chama Linux!



Sim caro amigo(a), você não leu errado!

Depois de muito tempo sem postar nada, resolvi tratar de um assunto que tenho cogitado bastante ultimamente, a migração da plataforma Windows para Linux.
Certo, vamos por partes. Talvez você se pergunte algo do tipo "Mas é possível jogar no Linux?", ou então "Mas o Linux quase não tem jogos, e os que tem rodam mal!". Bem, felizmente, é aí que você se engana! 


Primeiro quero deixar claro que o foco aqui é analisar sobre como os jogos rodam no Linux e comparar sua performance com o Windows, mas não necessariamente irei comparar os dois Sistemas Operacionais de modo geral (apesar de eventualmente falar uma coisa ou outra).

1º Motivo...

Antes de mais nada, o principal motivo de eu querer migrar para o Linux, é justamente o que vocês devem estar pensando, "it is free!". Mas não me levem a mal, não acho que o Windows seja um S.O. ruim, e eu pagaria por ele se estivesse num preço mais condizente com a realidade. Porém, a licença para a versão mais básica do Windows 10 (a Home Edition),  hoje em dia, é de R$ 559,99!, segundo o próprio site da Microsoft (https://www.microsoft.com/pt-br/store/b/windows - acessado em 04/05/2019). 

"Ah mas é só 'crackear' e pronto!"; É... não é bem assim. De fato, o uso de programas para forjar licenças do Windows, além de outros softwares de outras fabricantes, é uma prática muito comum aqui no Brasil, infelizmente...
Não condeno quem faz esse tipo de uso indevido dos softwares, até porque eu já utilizei muito software pirata na minha vida (e diga-se de passagem, ainda utilizo alguns... mas somente se extremo necessário e somente para uso pessoal!), contudo essa é sem dúvidas uma prática muito desonesta e ilegal! Por isso, o máximo que você puder evitar de utilizar softwares pitaras, melhor!
E só para concluir esse assunto, também estou ciente que existem licenças ditas "oficiais" sendo vendidas a um preço ridículo como 20, 15 ou até 10 reais. É uma solução? Talvez... o problema é que não sabemos se comprar licenças de outros usuários é ilegal, e muito menos se as licenças oferecidas são de fato originais. Mas se você quiser fazer da forma correta, na dúvida, não compre. No Windows 10 (versão Home pelo menos) não é necessária ativação, porém ele fica com algumas limitações e com uma marca d'água no canto inferior direito da tela. Não é lá a melhor coisa do mundo, mas se você possui um monitor ultra-wide, como é o meu caso, praticamente nem nota a marca d'água e pode utilizar tranquilamente o S.O.


Vulkan, uma revolução?


Há um tempo atrás, dificilmente o Linux era visto como uma alternativa para jogos. Apesar de aplicativos como o Wine, que "traduz" os arquivos do Windows para outros Sistemas Operacionais, funcionarem bem de certa forma, ainda assim o resultado é muito inferior do que caso o jogo fosse feito nativamente para a plataforma do pinguim.
Porém, isso mudou em 2010, quando a Steam anunciou o suporte de jogos de sua vasta biblioteca para os sistemas Linux, através do SteamPlay! No começo eram poucas dezenas de jogos que estavam disponíveis, porém de lá para cá, mais de 3000 títulos foram adicionados até meados de 2018! O trabalho foi árduo com certeza, mas, mesmo com todos esses títulos, a gama de jogos feitos para o Windows é centenas de vezes maior do que isso, o que ainda não gera grande conforto na comunidade "gamer". Até que no dia 21/08/2018, "sem mais nem menos", a Steam anuncia um Update monstruoso para o SteamPlay, a adição do programa Proton! Ele nada mais é do que uma versão melhorada (pela Valve) do Wine, no qual, utilizando a API Vulkan, consegue rodar praticamente todos os jogos disponíveis da Steam em distribuições Linux!

Ok, vamos com calma, afinal foi muita informação ao mesmo tempo. E aqui, deve-se uma explicação aos mais leigos no assunto...

Linux, por sí só, não é um Sistema Operacional, mas sim o Kernel de Sistemas Operacionais. Assim como no Windows, a partir do Vista, seu Kernel é o Windows NT. Kernel, é a base ou núcleo do S.O., é onde ficam os comandos de baixo-nível que fazem a comunicação entre software e hardware, além de fazer o gerenciamento dos mesmos, e outras funcionalidades.
Bom, se o Linux é o Kernel, qual é o seu Sistema Operacional? Diferentemente do Windows, no Linux exitem diversos S.Os. que também são conhecidos como distribuições. Além disso, existe uma variação de versões entre essas distribuições, como por exemplo a versão Debian, Ubuntu, Fedora, entre outras. A principal diferença entre elas é o jeito no qual foram desenvolvidas e os pacotes de arquivos que cada um utiliza, sendo que um pacote do Ubuntu pode não rodar numa distro Debian, e vice-versa.

Agora... o que é API? E esse tal de Vulkan?

API significa "Interface de Programação de Aplicações", basicamente é um conjunto de padrões de códigos de programação, ou seja, são códigos pré-programados que servem para uma determinada função. Quem faz estes códigos são as empresas responsáveis pela API, e quem os utiliza são usuários ou empresas de terceiros.
Para simplificar, vamos pegar um exemplo clássico, o Google Maps. Você provavelmente já viu sites que utilizam o google maps para mostrar o endereço de sua loja, certo? Então, para o maps funcionar nesses sites, basta o desenvolvedor web implementar e configurar o código já pré-programado pela Google, sem ter que criar toda a programação do zero. Bem útil, não?
Pois é, a Vulkan (desenvolvida pela Khronos) também é uma API, porém focada no processamento gráfico 3D, assim como a OpenGL e, as muito conhecidas, DirectX. E aqui chegamos no ponto principal para o título deste tópico. Porque a Vulkan seria uma revolução? A questão é que, a DirectX, desenvolvida pela Microsoft, só roda nos sistemas Windows. E como "99,9%" dos jogos de desktop são feitos nativamente só para o Windows, não há como o DirectX rodar nativamente em outros Sistemas Operacionais! (É por isso que praticamente qualquer jogo que você rodar no Windows terá um melhor desempenho do que em outro S.O.)
Isso, até a aparição da Vulkan! Afinal, ela não só consegue rodar nativamente no Windows, como também no Linux, MacOS, Android, IOS, entre outras plataformas! Ou seja, é de fato algo muito notável e positivo para quem quer migrar de Sistema Operacional sem ter que deixar de jogar os seus jogos preferidos.

Isso quer dizer que eu posso jogar o que eu quiser no Linux?! Calma, depende...

Temos de lembrar que o Proton é válido para os jogos que estão na biblioteca da Steam, ou seja, se você quiser desfrutar de um game que não está contido nesse aplicativo, provavelmente vai te que achar um outro jeito para fazê-lo executar. MAS, como a comunidade Linux é rápida e eficiente, existe um outro aplicativo muito útil que cumpre muito bem esse papel, aumentando ainda mais a gama de jogos disponíveis. Esse aplicativo é o Lutris!
"Lutris é uma plataforma de jogos de código aberto para Linux. Ela permite que você colete e gerencie (instale, configure e inicie) todos os seus jogos adquiridos a partir de qualquer fonte, em uma única interface." (Edivaldo Brito, 2019)

E resumindo essa explicação, mesmo se o jogo que você quer rodar não esteja presente nem no SteamPlay e nem no Lutris, você ainda pode buscar formas alternativas para conseguir jogá-lo! Se não for possível sozinho, peça ajuda na comunidade Linux! Acredito que essa plataforma só vingou de fato por causa de sua grande comunidade colaborativa, sem ela talvez não tivéssemos o Linux como ele é hoje em dia. Então, pergunte! Com certeza alguém irá tentar te ajudar!


2º Motivo...


E caso você ainda não se convenceu em migrar para o Linux, com medo de não conseguir jogar o que quiser, vou te dar mais um bom motivo para criar coragem: Google Stadia!
Para quem ainda não sabe, o Stadia é uma aposta gigante da Google para mudar completamente o cenário dos videogames no mundo! Isso, através do serviço de Streaming de jogos. Funciona assim: a Google possui vários servidores espalhados pelo mundo. Neles, estarão os jogos e o hardware necessário para rodá-los em até 4K e 60FPS. Ou seja, basta que você tenha uma internet adequada (cuja segundo a Google é de no mínimo 25Mb) para conseguir rodar o jogo que você quiser, na qualidade que você quiser e onde você quiser! Sim, onde! Porque o Stadia utiliza a API Vulkan! Então você poderá estar jogando no celular, parar o jogo nele e começar de onde parou em outro aparelho, seja TV, desktop, tablet, etc. (quem sabe até no visor de sua geladeira...)
Tirando o fato de que o Stadia é uma proposta visionária e que há muitas dúvidas em relação a sua funcionalidade, principalmente sobre a conexão com a internet (afinal, qual será o ping dessa "jossa"?), o que ele propõe é facilitar a vida de todo mundo, desde desenvolvedores que não precisarão mais se preocupar com diferentes linguagens de programação para portar seu jogos, até à você que não precisará mais gastar 6 mil reais num computador só para poder jogar em configurações médias.

Ah, e um outro detalhe que ainda não mencionei, o Stadia tem o seu S.O. baseado em Linux! Mas e aí, foi um motivo bom o suficiente para você sair da zona de conforto do Windows "crackeado"?


Finalmente!


Depois de toda essa "enrolação", é hora de ir para o que interessa, jogar no Linux!

Vamos partir do pressuposto que você esteja com o Ubuntu instalado. Porque? Bom, é a distribuição mais conhecida e talvez a que mais tenha suporte da comunidade. Isso não quer dizer que você não poderá jogar em outras distribuições, porém provavelmente o método de instalação dos aplicativos será diferente. Mas nada que uma "googlada" básica não resolva.
Desse pressuposto, você pode instalar a Steam de duas formas simples:

  • 1º: Abrir o terminal e digitar: "sudo apt-get install steam" (sem as aspas).
Nisso ele irá pedir sua senha de administrador. É só digitá-la e esperar a instalação acabar. 
Ou...
  • 2º: Ir no site da Steam, baixar o arquivo com a extensão ".deb" (sem aspas) e clicar duas vezes no programa baixado.
Desta forma irá aparecer um instalador padrão do Sistema Operacional, é só clicar em "Instalar", colocar a sua senha de administrador do S.O. e esperar finalizar.
Se estiver com alguma dúvida, deixo aqui o link para o blog do DioLinux, um dos maiores blogs de Linux do Brasil: Como instalar o Steam no Ubuntu e no Linux Mint

Feito isso, agora devemos habilitar o Steam Play:
  • Depois de logar com a sua conta da Steam, vá no menu "Steam" e clique em "Settings";
  • Na nova janela, selecione a aba "Account" e na opção "Beta participation" clique no botão "Change" e altere para o modo "Steam Beta Update";
  • Clique em "Ok" em todas as janelas e reinicie o programa. Ele irá começar a atualizar sozinho, deve-se esperar a atualização acabar;
  • Agora, com o programa aberto de novo, vá novamente no menu "Steam" e clique em "Steam Play";
  • Na aba "Advanced", marque a opção "Enable Steam Play for all titles". Isso habilitará o recurso Proton para todos os jogos da Steam (lembrando que alguns podem não rodar ainda).
  • Depois clique em "Ok" e vá para a sua biblioteca de jogos.
  • Por fim, é só instalar o jogo que você quer e executar quando estiver pronto!
E mais uma vez, se tiver ficado com alguma dúvida, pode olhar este artigo no blog do Dio: Steam Play Games no Linux

Agora, se você quiser, pode também instalar o Lutris, mas primeiro será necessário instalar o Wine:

  • Caso o seu Sistema Operacional seja 64bits, o Wine pede para habilitar a arquitetura 32bits também, se ainda não tiver feito. Então, abra o terminal e digite "sudo dpkg --add-architecture i386" (sem aspas). *Nota: Sempre que pedir a senha de administrador, você deve digitá-la e apertar "Enter"; E sempre quando for escrever uma linha dos comandos a seguir, não coloque as aspas duplas.* 
  • Em seguida, deve-se adicionar a chave do repositório. Ainda no terminal, digite "wget -nc https://dl.winehq.org/wine-builds/winehq.key";
  • Depois, digite "sudo apt-key add winehq.key";
  • Agora deve-se adicionar o repositório. Dependendo da versão do seu Ubuntu, a linha de comando pode ser diferente das outras. No site do Wine, está as linhas de comando referente a cada versão. Para fins didáticos, digamos que você esteja com a última versão do Ubuntu, a 19.04. Para esta versão,  digite o comando "sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ disco main' ";
  • Agora, fazer o update dos pacotes do Sistema: "sudo apt update", e em seguida instalar uma das versões de pacote do Wine. Talvez, a mais segura (por causa do nome) seja a versão stable. Então, digite: "sudo apt install --install-recommends winehq-stable";
Indo para o Lutris:
  • Com o terminal ainda aberto, digite: "sudo add-apt-repository ppa:lutris-team/lutris";
  • Depois atualizar os pacotes do sistema novamente: "sudo apt-get update";
  • E por último: "sudo apt-get install lutris";
Ufa... isso cansa no começo, eu sei. Mas fique tranquilo, com o tempo você vai se acostumar a usar o terminal e no fim vai ver que é muito melhor instalar os programas utilizando ele, inclusive provavelmente vai tentar fazer a mesma coisa no Windows, caso volte a utilizá-lo.
Se tiver ficado dúvidas também em relação a instalação do Lutris, esses vídeos podem ajudar: Como instalar o Wine no Ubuntu 18.04 ; Instalando Lutris no Ubuntu (e derivados) 

Outra coisa que é bom comentar aqui (sim, só mais um detalhe), é que talvez você precise instalar manualmente os seus drivers de vídeo caso o seu S.O. não tenha instalado, seja ele AMD ou Nvidia.
Para manter seus drivers sempre atualizados (coisa que é recomendado em questão de drivers de vídeo) você deve primeiro adicionar um PPA nas configurações do seu S.O. PPA é um pacote de arquivos pessoais, mas não importa muito o significado dele agora, só tenha em mente que para poder atualizar o seu driver de vídeo automaticamente, é necessário que ele esteja adicionado.

  • No terminal, primeiro digite o comando "sudo apt-add-repository ppa:graphics-drivers/ppa && sudo apt update";
  • Depois, digite "sudo ubuntu-drivers autoinstall";
  • Por último, deve-se reiniciar o computador. Você pode fazer isso manualmente, ou aproveitar o terminal aberto e digitar "sudo reboot";
Também há a possibilidade de adicionar o PPA via interface, cujo método é mais amigável para quem ainda não se acostumou muito a  fazer as coisas por terminal. Vou deixar o link de um vídeo e um artigo do DioLinux, se precisar é só conferi-los.

Pronto! É isso! Agora você provavelmente poderá jogar no Linux tranquilamente. Caso algum passo esteja errado ou você estiver tendo dificuldades em instalar alguma coisa, sinta-se à vontade para  avisar e/ou perguntar! Ainda não sei muita coisa sobre o Linux, mas tentarei te ajudar da forma que puder, afinal, duas cabeças pensam melhor do que uma, não é mesmo?

E para terminar com chave de ouro, irei deixar alguns vídeos abaixo com a comparação entre jogos rodando no Linux e no Windows. Lembre-se que a maioria dos games são feitos nativamente para Windows com o DirectX, então é inevitável que os gameplays no Linux podem ficar com um desempenho um pouco abaixo do que no outro sistema.. apesar de que, há sim casos onde o Linux consegue superar o Windows nesse quesito! (Mas na maioria dos casos é questão de poucos frames de diferença, seja quando há vantagem para o Linux ou para o Windows. Então, em questão de prioridade, minhã opinião é que o jogador deveria priorizar pela fluidez do jogo e não em taxa de quadros, afinal, de nada adianta rodar um jogo à 144FPS sendo que a cada 5 segundos ocorre uma queda de quadro para 15FPS. Desse jeito meu amigo, você irá querer tacar o seu computador pela janela... Mas enfim, isso é um assunto para outro artigo, assim como outro assunto que irei tratar em breve, o desenvolvimento de jogos no Linux! Mas é isso, abraço!).


Comparativo





Referências


BRITO, Edivaldo. Como instalar o cliente Steam no Ubuntu e derivados. 2019. Disponível em: <https://www.edivaldobrito.com.br/cliente-steam-no-ubuntu/>. Acesso em: 05 maio 2019.

BRITO, Edivaldo. Como instalar o cliente Lutris no Linux Ubuntu, Debian, Mint, Fedora, OpenSuSe e derivados. 2019. Disponível em: <https://www.edivaldobrito.com.br/cliente-lutris-no-linux/>. Acesso em: 05 maio 2019.

CANALTECH. O que é API? Disponível em: <https://canaltech.com.br/software/o-que-e-api/>. Acesso em: 05 maio 2019.

ESTRELLA, Carlos Felipe (ADRENALINE)O que é a Vulkan e porque ela pode mudar para sempre o mercado de games para PC.2016. Disponível em: <https://adrenaline.uol.com.br/2016/02/19/40334/o-que-e-a-vulkan-e-porque-ela-pode-mudar-para-sempre-o-mercado-de-games-para-pc/>. Acesso em: 05 maio 2019.

FOGAÇA, André (TECNOBLOG). Steam Play traz mais jogos do Windows para o Linux. 2018. Disponível em: <https://tecnoblog.net/256816/steam-play-jogos-windows-para-linux/>. Acesso em: 05 maio 2019.

GABRIEL, João (ADRENALINE). Nova versão da Steam Play traz Proton para rodar jogos do Windows em Linux. 2018. Disponível em: <https://adrenaline.uol.com.br/2018/08/22/56184/nova-versao-da-steam-play-traz-proton-para-rodar-jogos-do-windows-em-linux/>. Acesso em: 05 maio 2019.

GAETI, Leonardo (UOL). Ubuntu, Fedora, Debian: entenda as distribuições do Linux. 2008. Disponível em: <https://tecnologia.uol.com.br/dicas/ultnot/2008/01/17/ult2665u219.jhtm>. Acesso em: 05 maio 2019.

HASHIMOTO, Cleuber Silva. Conheça o Lutris – Uma Plataforma Multi-Games. 2017. Disponível em: <http://www.cleuber.com.br/index.php/2017/12/04/conheca-o-lutris-uma-plataforma-multi-games>. Acesso em: 05 maio 2019.

LIMA, Gilsimar (MICROSOFT). Qual o nome do kernel do Windows 10? 2018. Disponível em: <https://answers.microsoft.com/pt-br/windows/forum/windows_10-other_settings/qual-o-nome-do-kernel-do-windows-10/4d7a5476-4ba0-4d61-a1c3-4378b1e12c5b>. Acesso em: 05 maio 2019.

LINUX, Dio. Valve lança ferramenta com objetivo de rodar TODOS os jogos de Windows no Linux. 2018. Disponível em: <https://www.diolinux.com.br/2018/08/steamplay-windows-games-no-linux.html>. Acesso em: 05 maio 2019.

LINUX, Dio. Google Stadia promete revolucionar o mundo dos jogos com Linux e Vulkan. 2019. Disponível em: <https://www.diolinux.com.br/2019/03/google-stadia-gaming-plataform-linux-vulkan.html>. Acesso em: 05 maio 2019.

LINUX, Dio. Drivers Nvidia Ubuntu - Como instalar a última versão passo a passo! 2018. Disponível em: <https://www.diolinux.com.br/2018/10/como-instalar-drivers-nvidia-ubuntu-tutorial.html>. Acesso em: 05 maio 2019.

LOUREIRO, Jorge (EUROGAMER). Todos os jogos do Steam são agora compatíveis com Linux. 2018. Disponível em: <https://www.eurogamer.pt/articles/2018-08-22-todos-os-jogos-do-steam-sao-agora-compativeis-com-linux>. Acesso em: 05 maio 2019.

LUTRIS (Org.). Downloads. Disponível em: <https://lutris.net/downloads/>. Acesso em: 05 maio 2019.

PIERRE-LOUP (STEAM). Steam for Linux: Apresentando a nova versão do Steam Play. 2018. Disponível em: <https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561>. Acesso em: 05 maio 2019.

WINE (Org.). Ubuntu: Installing WineHQ packages. 2019. Disponível em: <https://wiki.winehq.org/Ubuntu>. Acesso em: 05 maio 2019.


Comentários

  1. Artigo muito interessante, mas hoje em dia já temos uma noção de que o Stadia não é tudo aquilo...

    ResponderExcluir

Postar um comentário

Postagens mais visitadas deste blog

O que é Game Dev.?

Game Dev. comumente pode significar duas coisas: Game Developer (Desenvolvedor de Jogo) ou Game Development (Desenvolvimento de Jogo). Claro, o significado deste deve ser interpretado conforme o contexto em que está inserido.  No caso do nome deste blog , "Café com Game Dev.", foi escolhido com o intuito de  transmitir a ideia de um "papo"/"prosa" descontraída sobre desenvolvimento de jogos.  Importante destacar que a palavra  Game Developer não significa a mesma coisa que Game Designer , e que por sua vez, nenhuma das duas significa também o mesmo que Design Gráfico. Farei um outro artigo sobre a moda dos " Design e Designers " que são utilizados para tudo hoje em dia, porém aqui vou me atentar ao Game Dev . Mas, o Game Developer  pode ser qualquer profissional do qual trabalha com desenvolvimento de jogos, não importando a sua área profissional. Ou seja, pode ser o programador, o artista gráfico, artista sonoro, compositor m

O que significa Gameplay e Jogabilidade (Playability)?

Pera aí Rafael, não é a mesma coisa? Na verdade, existem vários estudos sobre este assunto e ainda não se chegou em uma definição concreta, sem brincadeira. Isso quer dizer que cada um pode interpretar o significado destas palavras do jeito que achar melhor. Mas a fim de estabelecer uma opinião conjunta, seria interessante começarmos a pensar da mesma forma, estipular um significado. Para isso, claro, precisamos ter uma base sólida em nossas afirmações. Não estou dizendo que a classificação a seguir é a melhor, mas , acredito que seja interessante a levarmos em consideração. Compartilho em partes com a ideia de Sato e Cardoso¹, Aguiar e Battaiola², e Rouse III³. A partir deles pude formar a ideia de que: Gameplay : resume-se ao jogo em si. Explicando melhor, são todas as partes do jogo (gráficos, programação, música, animação, enredo, etc.) interagindo entre si e todas as partes do jogo interagindo com o jogador. A palavra que fica em destaque aqui é a interação (Rouse II

Unreal Engine 5 vai desbancar a concorrência? - Entenda porque o novo motor da Epic Games está causando Hype entre os desenvolvedores. -

Foto retirada do trailer de apresentação da Unreal 5 Dia 13 de Maio desse ano, a Epic Games surpreendeu muita gente com o trailer de uma demo jogável para o PlayStation 5 . Esse trailer, mostra um pouco sobre os novos recursos da futura engine da empresa e causou um certo alvoroço na comunidade de games . Para entendermos o porquê desse hype , vamos tentar analisar o que é prometido e demonstrado no trailer, e observar o que temos atualmente. Trailer da Unreal5 , publicado no Youtube pelo GameSpot O grande apelo desta nova versão está na parte gráfica, da qual a empresa afirma buscar uma qualidade fotorealística muito próxima do que se vê no cinema. Ou seja, gráficos de cinema com um render em tempo real, será que já é possível mesmo?  Bem, vamos começar falando do seu novo sistema de luz, o Lumen . Este é um sistema similar ao Ray Tracing , que permite o artista criar cenas mais fluidas, como por exemplo alterar o ângulo do sol para uma hora do dia escolhida, influenciando assim a