Gostaríamos de saber se alguém que entende de OpenGL pode resolver nossa dúvida:
No nosso jogo Horus Eye, estamos tentando migrar a framework de puro SDL pra SDL+OpenGL. Já estã praticamente tudo feito. O que faltou foi o nosso sistema de FOG.
Esse sistema é bem semelhante ao de jogos como Diablo I & II e Tibia. O cenário (2D isométrico) é escuro mas pode ser iluminado por focos de luz. Na versão de puro SDL nós conseguimos fazer isso renderizando uma imagem preta mas com vazados de forma elíptica que ficavam menos opacos (mais transparentes) nos pixels mais próximos aos centros das elipses. Basicamente, o jogo era visto através de buracos de forma elíptica com degradê, o que dá a impressão de luz nas elipses e sombra longe delas.
Isso nos custava muita eficiência e foi um dos principais motivos por optarmos pela mudança para OpenGL. Só que não encontramos um jeito de obter o mesmo resultado com algum ganho efetivo de velocidade. Existe alguma funcionalidade do OpenGL que faça facilmente o que queremos?
Por enquanto estamos explorando meios alternativos de fazer a FOG bem diferentes do modelo em SDL.
Agradecemos a atenção!
Wil