05
dez

ATI no Linux, Shaders, OpenGL, WindLight, dicas e esclarecimentos [atualizado 07/02/2008]

Tux100

Minha experiência ATI no Linux.


  1. Sapphire ATI Radeon 9600XT AGP
  2. ATI Xpress 1150 (1100 IGP) PCI-X onboard

AMDGostaria de compartilhar algumas conclusões que tirei, da maneira difícil pois não temos nenhuma documentação clara sobre isso. Informações que não vem de mão beijada.

Atualizações:

  • ATI Catalyst™ 8.1 funcionou com Shaders e tudo mais em ambas as minhas placas. SecondLife WindLight rodando 100% com reflexos na água e visuais maravilhosos.

Informações:

  • Shaders: quebrados e/ou desativados! Nos drivers mais antigos havia suporte a Shaders, pelo jeito não 100%, mas nas últimas versões ele parece que foi desativado.
  • OpenGL: desatualizado, suporta alguns comandos do padrão 2.0 mas depende de suas extensão ARB, que foi precursora do OpenGL 2.0. Os novos softwares como o SecondLife, Crysis, etc não vão ficar se preocupando com tecnologia antiga! Todos já estão usando OpenGL 2.0.
  • SecondLife FPS: Não pode-se comparar os FPS do SecondLife com dos joguinhos que conhecemos, pois os jogos vem com GigaBytes de imagens pré-renderizadas enquanto o SecondLife renderiza quase tudo online na hora. A final o conteúdo do SL é dinâmico, em constante alteração e criação! O FPS máximo do SL é 40, não importa a placa.
  • Driver OpenSource DRI R300: O driver tradicional “radeon” está cada vez melhor. Funcionou com aceleracão completa e Compiz Fusion 100% na minha ATI 9600XT. Nada de shaders ainda. A performance ainda não chega aos pés do driver proprietário, mas já uma alternativa viável. Agora para minha Xpress 1150 ele ainda não suporta aceleracão 3D (DRI) e avisa:
    (WW) RADEON(0): Direct rendering disabled
    (II) RADEON(0): Render acceleration unsupported on Radeon 9500/9700 and newer.

    Leia mais a respeito no site deles nos links abaixo.

O que isso significa?

  1. Sem reflexo na água. O SecondLife WindLight é um ótimo exemplo. *
  2. Cenas de por-do-sol corrompidas. **

Dicas:

  • A versão padrão do Ubuntu Gutsy 7.10 Restricted Drivers do driver ATI (8.37.6) ainda suportava shaders e serviu para fazer uns passeios no SL WindLight com direito a lindas paisagens com reflexos na água e tudo mais. Mas os FPS ficam muito baixos e costuma travar o SL de tempos em tempos. Isso funcionou apenas na minha ATI 9600XT. Na Xpress 1150 não muda nada ativar ou não os shaders, como se simplesmente não existissem.
  • *** A versão 8.40.4, que vem no Mandriva 2008, permite rodar o SecondLife WindLight 76886 com todos seus efeitos e performance aceitável! Descobri por coincidencia testando o Mandriva 2008 One Live CD. Apenas não funciona em fullscreen, mas modo janela, maximizada ou não, funciona normalmente sem travamentos. Isso significa que a versão 8.40.4 dos drivers ATI tem os Shaders todos funcionando.
    • Pra aproveitar todos os efeitos e performance do SL WindLight em sua ATI, você precisa alterar 2 arquivos de configuracão dele, para “destravar” tudo.
    • featuretable_linux.txt: Procure a sessão ATI e comente as duas linhas limitadores que existem lá. Ficando assim:
      list ATI
      //UseOcclusion 0 0
      //WindLightUseAtmosShaders 0 0
    • gpu_table.txt: Procure o modelo correto de sua placa de vídeo e altere os numeros para 3 e 1, ficando assim no meu caso:
      ATI Radeon 9600 .*ATI.*Radeon 96.* 3 1
    • Com isso você ativa tudo que tem direito. Dentro das propriedades gráficas do SL você pode regular e testar cada um deles.
  • VBO: Na ATI 9600XT, driver 8.37.6 e 8.40.4, ativar os OpenGL Vertex Buffer Objects causa lentidão. Nos drivers mais novos (8.42.3 e 7.11), tanto na 9600XT como na Xpress 1150, eles aceleram consideravelmente os FPS de renderização. Pelo que li, é essencial ativa-los nas placas mais novas.
  • Algumas poucas experiências que fiz com OverClocking e fuçando em configurações da BIOS me fizeram chegar a conclusão que OverClocking não combina com aceleracão 3D. Em minha placa Abit uGuru tive que deixar o Memory Settings em Optimal. Qualquer tentativa de Agressive ou Turbo causou crashes ao usar toda a aceleracão 3D deminha placa ATI 9600XT.
  • Performance: As melhoras mais notáveis da evolução dos drivers proprietários ATI, por enquanto, são relacionadas a performance. Cada vez mais rápido! O FPS do SL triplica (de 6 para 17,7) pra minha Xpress 1150 comparando a versão 8.37.6 com as novas 8.42.3 e 7.11! A estabilidade também está cada vez melhor. Ou seja, mantenha-se atualizado!
  • Melhorei a performance no SecondLife auomentando o AGPGart Size para o máximo em minha BIOS (512MB) e limitando o Texture Memory para metade da memória da placa de vídeo, 128MB / 2 = 64MB no caso das minhas ATI 9600XT e Xpress 1150.

* Sem shaders:
SL Postcard* Com shaders (ATI 9600XT Ubuntu Gutsy 7.10 e driver restrito da ATI):
SL Postcard WL1 SL Postcard WL2 SL Postcard WL3

** Por-do-sol corrompido:
WindLight bug1

*** SL WL com tudo funcionando na ATI 9600XT:
SL WL Postcard SL WL snapshot


Sitacão da Wiki:

ATI Unofficial Wiki

OpenGL

  • Provides some OpenGL 2.0 commands
    BUT NOT the OpenGL 2.0 version of the shading language.

The ATI driver uses a version of the shading language called the ARB extension. The ARB extension was used before OpenGL 2.0 was finished.

Referências:

Alroger Filho

2 Responses to “ATI no Linux, Shaders, OpenGL, WindLight, dicas e esclarecimentos [atualizado 07/02/2008]”

  1. 2
    Storm Says:

    Melhorou para placas ATi , mais para Geforce simplesmente ficou uma merda.

© 2024 Cafe TI – pra perder o sono. | [RSS] Artigos and [RSS] Comentários

Design by Web4 Sudoku - Powered By Wordpress