Se eu corro o jogo, todas as cores estão erradas e há listras de cores estranhas em todos os lugares (os polígonos estão desenhados OK, então eu acho que é um problema de sombreador).
Mas como o meu hardware e o driver do r600g suportam o OpenGL 4, eu substituí a versão do OpenGL, assim como a versão do GLSL para o 4.1 ao iniciar o jogo:
MESA_GL_VERSION_OVERRIDE=4.1 MESA_GLSL_VERSION_OVERRIDE=410 %command%
Mas como tenho um chip "Caicos" onde faltam apenas as extensões "hardware-douple-precision-fp64" para a conformidade com o OpenGL 4, atualmente estou limitado ao OpenGL 3.3 (embora eu espere que os desenvolvedores da Radeon implementem o software emulado suporte de precisão dupla para os chips mais antigos também.
De qualquer forma, a substituição da versão melhorou muito a renderização: tudo foi exibido corretamente, exceto o céu, que era preto como azeviche e tinha algumas partes coloridas erradas. Então, isso parece ser um problema de shader novamente, já que as seguintes mensagens de erro do console foram impressas:
EE ../../../../../src/gallium/drivers/r600/r600_state_common.c:798 r600_shader_select - Failed to build shader variant (type=1) -1 (sometimes also -12 here)
EE ../../../../../src/gallium/drivers/r600/r600_shader.c:182 r600_pipe_shader_create - translation from TGSI failed!
EE ../../../../../src/gallium/drivers/r600/r600_shader.c:3662 r600_shader_from_tgsi - GPR limit exceeded - shader requires 125 registers
EE ../../../../../src/gallium/drivers/r600/r600_shader.c:8685 tgsi_endif - if/endif unbalanced in shader
Essas quatro mensagens estão se repetindo algumas centenas de vezes. O último erro indica que algumas partes do código do shader também não estão devidamente codificadas - seria culpa da Gaijin aqui.
A única solução para este problema que encontrei até agora é usar o driver proprietário da AMD - que funciona apenas com o Ubuntu 15.10 e é cerca de 30-50% mais lento que o driver de código aberto também.
O que encontrei nos arquivos de log iniciais do jogo é uma lista das extensões necessárias do OpenGL (as extensões "fp64 double precision" não foram listadas, como esperado), mas não houve mensagens de erros.
Alguém poderia me explicar uma maneira possível de corrigir esse problema ou a melhor maneira de atualizar meu driver? Eu sei que existem alguns PPAs com os drivers mais recentes, mas eles não mudaram nada quando os testei.
Felicidades, Ignatiamus