Como instalar o jogo M.A.R.S. via Flatpak no Debian

O M.A.R.S. é um jogo de tiro feito para 2 jogadores, baseado na plataforma OpenGL.
Conta com naves espaciais, navegando em um espaço bidimensional e governado pelas leis da gravidade.

Você precisa ter configurado o suporte a Flatpak no seu sistema, antes de prosseguir. Veja aqui, como fazer isso.

A história do jogo

No ano 3547, as civilizações de toda a nossa Galáxia estão organizadas, cada qual em seu planeta.

Uma grande guerra se aproxima e toma vulto. Você é um dos famosos guerreiros, chamados para defender seu planeta dos “vizinhos invejosos”.

Ao lado da “grande guerra”, paira uma ameaça ao seu sistema planetário. Uma nave gigante, de invasores desconhecidos, carregando uma arma monolítica de destruição em massa, se aproxima e representa um perigo bem maior.

Recursos presentes no jogo

  1. gráficos 2D, com design único ao jogo
  2. suporte a modo multiplayer ou single
  3. naves espaciais personalizáveis e quantidade de armas, além de itens especiais
  4. suporte a vários idiomas e inteligência artificial, que provẽ reações diferentes, nas mesmas situações

mars shooter game

O jogo pode ser encontrado no Flathub (link abaixo):

https://flathub.org/apps/details/net.sourceforge.mars-game

Divirta-se!

Como instalar o Unity 3D Editor 5.6 beta game engine para Linux

A versão do Unity 3D Game Engine Editor pra Linux pode ser instalada em várias distribuições. Vários sites têm feito reviews e mostrado como instalar este framework.
Já escrevemos sobre o processo de instalação neste post — sugiro dar uma olhada, caso reste dúvidas após a leitura deste post.

Atualmente, o Unity 3D está mais maduro e, se você ainda não o experimentou, vale a pena dar uma chance ao software.
O processo de download e instalação está super fácil e pode ser realizado em poucos passos.
Neste post, vou mostrar como fazer a instalação no Debian/Ubuntu e em outras distribuições (como Fedora, openSUSE etc.)

Baixe e instale o Unity 3D Editor no Debian ou Ubuntu

Os exemplos dados neste texto foram executados no KDE Neon 5.9 — baseado no Ubuntu 16.04 LTS “Xenial Xerus”.
Baixe o pacote .deb de instalação do Unity 3D Editor 5.6.0b8 beta, diretamente no site http://beta.unity3d.com/download/1da4c632c3f6/public_download.html.
Ou use o comando wget:

 wget http://beta.unity3d.com/download/1da4c632c3f6/unity-editor_amd64-5.6.0xb8Linux.deb

Feito o download,
verifique o md5sum:

 md5sum unity-editor_amd64-5.6.0xb8Linux.deb

6ab683eb7da634a613d97b6fdcad4ef5  unity-editor_amd64-5.6.0xb8Linux.deb

Se tudo estiver ok, até agora, proceda com a instalação do pacote:

 sudo dpkg --install unity-editor_amd64-5.6.0xb8Linux.deb

Como fazer a instalação em outras distribuições Linux

Na mesma página, dada anteriormente, faça download do script platform-agnostic ou use o comando wget:

 wget http://beta.unity3d.com/download/1da4c632c3f6/unity-editor-installer-5.6.0xb8Linux.sh

Teste o md5:

 md5sum unity-editor-installer-5.6.0xb8Linux.sh

Em seguida, torne o script executável e rode-o:

 chmod aug+x unity-editor-installer-5.6.0xb8Linux.sh

# ... e rode o script abaixo com privilégios administrativos:

 ./unity-editor-installer-5.6.0xb8Linux.sh

Pronto. Agora já é possível executar o Unity 3D Editor da linha de comando, do dash ou do menu da sua distribuição…

/opt/Unity/Editor/Unity


Antes de usar, caso você ainda não tenha cadastro com a empresa que desenvolve o aplicativo, terá que fazer um breve cadastro.
unity editor

Referências

Sugiro dar uma olhada no forum unity3d para verificar se não há uma versão mais atual, ao final da página:
https://forum.unity3d.com/threads/unity-on-linux-release-notes-and-known-issues.350256/?_ga=1.161269565.1226268089.1487593352.

Como obter a fase da Lua, em qualquer data, no Linux.

O comando pom é um dos comandos tradicionais e presentes, por padrão, nas distribuições Linux.
Pode ser usado dentro de um script, em que se precise estabelecer que “algo” aconteça em determinada fase da Lua.
Pelo fato de o comando ser muito simples, vou mostrar o seu funcionamento em uma máquina Debian 9 Stretch e em uma FreeBSD 10.3.
Há pequenas variações em seu funcionamento.
Em ambas, é possível obter a fase lunar atual, com uma simples execução:

pom
The Moon is Waxing Gibbous (81% of Full)

Ou seja “A Lua está um Quarto Minguante (81% cheia)”.

O pom no Linux

A versão empacotada no Debian, é escrita por Keith Brandt e é bastante simplificada.
Você pode ver um exemplo de uso do comando no site http://www.die.net/moon/moon phase
Se quiser obter a fase da Lua em uma data específica, informe-a da seguinte maneira:

pom 2016080623
Sat 2016 Aug  6 23:00:00 (UTC):  The Moon will be Waxing Crescent (17% of Full)

Repare no formato correto da data.

Os significados dos textos do pom

O pom irá usar, em função da fase lunar, os seguintes textos:

  • The Moon will be new — A Lua será nova.
  • The Moon will be Waning Crescent — A Lua estará Minguante Crescente.
  • The Moon will be Waxing Crescent — A Lua estará Quarto Crescente
  • The Moon will be Waxing Gibbous — A Lua estará Quarto Minguante
  • The Moon will be Full — A Lua será cheia
  • The Moon will be Waning Gibbous — A Lua estará Minguante
  • The Moon will be at the Last Quarter — A Lua estará no Último Quarto

O pom no FreeBSD

O pom faz parte do meta pacote bsd-games, presente nos sistemas operacionais da família BSD e no GNU/Linux.
O código do pom, no FreeBSD 10.3 é um pouco mais novo do que a versão presente no Debian.
A página do manual, contudo, não informa seu autor — mas o funcionamento básico é exatamente o mesmo.
Há algumas opções a mais para quem rodar o pom no sistema do Beastie.
Se quiser obter apenas o valor percentual, indicativo do quanto a Lua está cheia, use ‘-p’:

pom -p            
#79

Este resultado é perfeito para ser usado dentro de um script.
O formato da data é diferente também:

pom -d 2017.08.15
The Moon is Waning Crescent (50% of Full)

Se você não informar a hora, o padrão será às 23h daquele dia.
Se quiser obter uma informação com a precisão de hora, minuto e segundo, use este exemplo:

pom -d 2022.10.20 -t 15:03:45 
The Moon is Waning Crescent (23% of Full)

Referências

Coleção de jogos Unix/Linux para brincar no terminal.
https://pt.wikipedia.org/wiki/Fases_da_Lua.
http://www.calendario-365.com.br/lua/fases-da-lua.html.

Coleção de jogos Linux para brincar no terminal

Nem sempre gráficos e efeitos visuais sofisticados vem acompanhados de entretenimento de alta qualidade.
Se você consegue se divertir com um jogo bem simples, que não suga o processador do seu computador, pode experimentar alguns destes jogos, de que vamos falar no resto deste texto.
space invaders flyer 1978
Eles não pesam, alguns já estão instalados (e você nem sabia!) ou são fáceis de instalar.
Tá com tempo livre?! Então me acompanhe!! 🙂

“Jogabilidade (ou playability), na terminologia dos jogos eletrônicos, é usado para descrever a experiência geral de um jogador em relação aos controles e desafios de um jogo” — Wikipedia.

O conceito de jogabilidade também é independente de sofisticação visual ou imagens foto realistas de alguns jogos contemporâneos.
Entre outras coisas, isto significa que dá para relaxar e se divertir um bocado também em um computador com recursos de hardware limitados.
Você pode encontrar muitas implementações destes jogos na web, reescritos em PHP, Python, HTML etc.

O pacote de jogos de console Debian

O games-console é um metapacote presente no Debian, no Ubuntu e em outras distros.
Veja a relação de pacotes de jogos do conjunto:

  • aajm, an, angband, animals, asciijump, bastet, bombardier,
  • bsdgames, cavezofphear, colossal-cave-adventure, crawl,
  • curseofwar, empire, freesweep, gearhead, gnugo,
  • gnuminishogi, greed, matanza, moria,
  • nethack-console, netris, nettoe,
  • ninvaders, nsnake, ogamesim,
  • omega-rpg, pacman4console,
  • petris, robotfindskitten,
  • slashem, sudoku, tetrinet-client, tint, tintin++, zivot

Só na relação, acima, são 39 jogos de console — pode instalar apenas os que gosta ou que tem curiosidade de conhecer.
netris tetris
Se quiser instalar apenas alguns, use o gerenciador de pacotes da sua distro para instalá-los. Veja um exemplo, com o apt:

sudo apt install nethack-console netris nsnake

Se tudo o que você quer é o cavezofphear, instale apenas ele.
Mas, se quiser experimentar todos, após a instalação, o pacote inteiro não ocupará mais do que 23,6 Kb.
Alguns jogos são variantes (não são iguais) de outros. O bsdgames-adventure é uma variante de colossal-cave-adventure e há 3 variantes do Tetris.
Quase todos não tẽm tradução para o português — o que é uma ótima notícia para quem deseja praticar um pouco de inglês.
O RPG de aventura Colossal Cave, por ser todo em texto e pedir que se interaja em inglês, é uma das ótimas oportunidades do pacote para quem deseja melhorar sua compreensão do idioma, ao mesmo tempo em que se entretém — pegue estes limões e faça uma limonada.
bsdgames-adventure ou Colossal Cave Adventure.
Além do Tetris, há vários outros clássicos popularizados, ao longo dos anos, nas plataformas Atari etc.
E, nem todos, são velhos. Alguns já foram (re)escritos recentemente.
ninvaders space invaders.
O nInvaders, que usa a biblioteca ncurses, tem código escrito em 2002 — embora se baseie no arcade clássico Space Invaders, desenvolvido por Tomohiro Nishikado e popularizado pela Taito, em 1978.
Divirta-se e, se tiver tempo, nos conte quais são os seus preferidos nos comentários! 🙂

Referências

https://opensource.com/life/16/6/terminal-based-games-linux?sc_cid=70160000000lcFwAAI&utm_content=buffer0afb0&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer

Guia prático para testar a performance do seu sistema com o OpenGL no Linux.

O OpenGL é um ambiente para desenvolvimento de aplicações móveis e interativas, com gráficos 2D e 3D.
Desde sua introdução, em 1992, o OpenGL se tornou a API mais difundida na indústria de softwares — o que possibilita a criação de milhares de aplicativos em uma grande variedade de plataformas.
OpenGL oficial logo
A escalabilidade da API do OpenGL permite que se rode aplicações em pequenos eletrodomésticos, aparelhos móveis, PCs/notebooks, workstations e supercomputadores.
Desenvolvedores podem trabalhar com e para qualquer plataforma, usando a API.
O OpenGL tem suporte para todos os UNIX, todas as versões do Windows (desde a 95), para o MacOS e, é claro, para o Linux.
A API pode ser chamada de praticamente todas as linguagens de programação importantes — Ada, C, C++, Fortran, Python, Perl, Java etc.
Neste artigo, vou mostrar como testar a performance do seu sistema Linux em relação ao OpenGL.
Para realizar os testes, usarei uma máquina com openSUSE Leap 42.1 e outra com Ubuntu 16.04 LTS.
Os aplicativos usados nos exemplos são universais e, caso sua distro GNU/Linux seja outra, não será difícil encontrá-los para baixar — se já não estiverem instalados.

A performance da sua placa gráfica no Linux

Apesar de ser famoso pela sua estabilidade e eficiência, como plataforma para realizar diversas tarefas, o Linux não é conhecido como plataforma excepcional para jogos — o que é uma injustiça.
Como consequência, não temos muitas ferramentas de benchmarking, de medição precisa da performance do hardware gráfico.
Ferramentas, estas, que poderiam nos ajudar a tirar conclusões mais sólidas e fazer comparações técnicas entre produtos e determinar exatamente o quão bem as coisas funcionam.
Enfim, todas as ferramentas de benchmarking disponíveis atualmente, para a plataforma Linux, rodam apenas sob a renderização da API do OpenGL.
Ainda que sua unidade de processamento gráfico (ou GPU) tenha compatibilidade com alguma versão do Direct3D… não será possível testá-las, neste quesito, usando Linux.
linux penguin

Use o GLX-Gears para experimentar o OpenGL no Linux

Este é um aplicativo popular e tradicional para testar o suporte ao OpenGL, no Linux (e em outros sistemas operacionais).
O glxgears faz parte do pacote de softwares ‘mesa-utils’.
No Ubuntu, você pode instalá-o com o apt (ou aptitude, no Debian):

sudo apt install mesa-utils

No openSUSE, use a ferramenta de gestão de pacotes, zypper para instalar o ‘mesa-demo-x’:

sudo zypper install mesa-demo-x

A partir daqui, já é possível usar as ferramentas glxinfo e glxgears.
Ao executar o comando glxgears, vai abrir uma janela, com uma renderização clássica do OpenGL, que mostra um conjunto de 3 rodas dentadas ou engrenagens.
Você pode verificar o frame rate ou FPS no terminal, em que você o executou, a cada 5 segundos.
glxgears
Trata-se de uma ferramenta bastante antiga.
O aplicativo glxgears é muito básico e testa apenas uma porção pequena das possibilidades que o OpenGL oferece hoje.
Quando foi concebido, era usado para determinar se o driver proprietário da placa de vídeo estava instalado e funcionando corretamente em comparação com a versão de código aberto ou open source. Você não perceberia a diferença nos dias de hoje, contudo.

Como testar o OpenGL com o glmark2

Você pode instalar o glmark2, no Ubuntu, com o apt:

sudo apt install glmark2

Para instalar no openSUSE, siga os passos:

sudo zypper addrepo http://download.opensuse.org/repositories/home:ykoba/openSUSE_Leap_42.1/home:ykoba.repo
sudo zypper refresh
sudo zypper install glmark2

Para instalar o glmark2 no Debian, siga estas instruções.
Novamente, o programa deve ser executado no terminal, onde você poderá observar os resultados dos diversos testes que ele irá realizar — que podem ser vistos em uma janela à parte, tal como no glxgears.

glmark2

O aplicativo renderiza diversos tipos de imagens e gráficos em 2D e 3D, na tela e mede o desempenho em FPS.
Finalmente, calcula a média dos resultados dos testes e dá uma pontuação para a sua GPU.
Esta pontuação pode ser usada como parâmetro comparativo entre diversas máquinas/placas gráficas.
Alguns parâmetros de uso interessantes do glmark2 podem ser os seguintes:
O exemplo, que segue, apenas valida os diversos tipos de testes em relação ao seu hardware de renderização gráfica.

glmark2 --validate

O exemplo, abaixo, roda o aplicativo em tela cheia — útil quando você só deseja saber o resultado final e não tem a intenção de acompanhar os testes uma a um.

glmark2 --fullscreen

O resultado do programa executado em uma janela vai ser diferente de quando for executado em tela cheia. Resoluções diferentes tem intensidade diferente de uso do hardware, como será possível observar nos próximos testes.
Você pode rodar benchmarks específicos, se quiser.
Para rodar apenas o pulsar, use o seguinte procedimento:

glmark2 --benchmark pulsar

O resultado se refere apenas ao módulo testado:

=======================================================
    glmark2 2014.03
=======================================================
    OpenGL Information
    GL_VENDOR:     Intel Open Source Technology Center
    GL_RENDERER:   Mesa DRI Intel(R) HD Graphics 5500 (Broadwell GT2) 
    GL_VERSION:    3.0 Mesa 11.0.8
=======================================================
[pulsar] <default>: FPS: 1389 FrameTime: 0.720 ms
=======================================================
                                  glmark2 Score: 1389 
=======================================================

Você pode usar o relatório de glmark2 --validate para saber o nome do teste. Basta usar os nomes entre [ ], no início de cada linha.
Desta forma, para realizar o teste de refração, use o seguinte comando:

glmark2 --benchmark refract

Para rodar o teste de textura na resolução 4K (Ultra HD), use a seguinte linha de comando:

glmark2 --benchmark texture --size 3840x2160

Obviamente, se sua tela não tiver capacidade para exibir nesta resolução, a janela do glmark2 ficará um “pouco deslocada”. Mas é possível reposicioná-la com o mouse/touchpad.

Os resultados do glmark2

O glmark2 ainda não é a ferramenta completa para testes, uma vez que não cobre os recursos presentes nas versões posteriores ao OpenGL 2.0 — que já se encontra na versão 4.5 e deve começar a ser substituído pela nova API Vulkan.
Nos testes realizados, é possível ver uma progressão na contagem do FPS para cada teste, individualmente.
GPUs mais potentes são capazes de entregar taxas melhores de atualização.
Não confunda a taxa do FPS com a taxa de atualização do monitor (monitor refresh rate) que, provavelmente é 60 e não irá mudar.
O glmark não é capaz de oferecer resultados absolutos ou 100% conclusivos sobre a performance individual do hardware de exibição gráfica.

Uma máquina, por exemplo, com uma CPU de alto desempenho e sem qualquer peça de aceleração gráfica pode obter o mesmo resultado que uma outra máquina, com CPU + GPU medianas.

O motivo disto é que a renderização baseada em software, usada pela CPU de alto desempenho, equivale ao poder de processamento da combinação CPU + GPU de pequeno porte.
Esta é uma limitação do glmark2.
Fique à vontade para compartilhar com os outros leitores sobre o seu hardware gráfico e os seus resultados, na sessão de comentários.

Referências

Experimente também usar as ferramentas Unigine de teste de desempenho da placa gráfica.
Apesar de serem proprietárias, são excelentes.


OpenGL oficial page: https://www.opengl.org/about/.
Linux GPU benchmark: https://www.howtoforge.com/tutorial/linux-gpu-benchmark/.
http://www.binarytides.com/glmark-linux-gpu-performance/.