Gostaria de saber qual é a melhor maneira de abordar um efeito de "iluminação" em jogos 2D. Por exemplo, se meu personagem principal está brilhando, que técnicas posso usar para concluir o efeito visual do personagem brilhando quando ele está perto de outros objetos que seriam afetados pela luz?
xna
2d
lighting
graphic-effects
Christopher Horenstein
fonte
fonte
Existe um projeto XNA de código aberto que é uma excelente biblioteca e implementação de iluminação 2D que é compatível com o perfil Reach do XNA 4.0 - Krypton XNA .
fonte
Você precisaria de um efeito de sombreador pós-filtro escrito em HLSL ou GLSL. O shader receberia as coordenadas do player e modificaria o brilho de todos os pixels em um determinado intervalo. O XNA suporta shaders 2D muito bons.
Outra solução seria simular o brilho usando uma textura com um canal alfa. A textura seria principalmente preta, exceto por um ponto transparente no meio. Essa textura é uma sobreposição na tela do jogo, com o ponto transparente centralizado no personagem do jogador 'brilhante'. Jogos antigos de aventura usavam essa técnica para simular lanternas.
fonte
Após algumas pesquisas, este blog pareceu um bom começo:
http://www.soolstyle.com/2010/02/15/2d-deferred-lightning/
não deixe de ler os comentários, pois existem algumas melhorias, mas a postagem do blog o ajudará a começar :).
fonte