Eu já vi muitos exemplos de como renderizar sprites a partir de uma planilha, mas ainda não entendi por que é a maneira mais comum de lidar com sprites em jogos 2D.
Comecei com a renderização de sprites em 2D nas poucas aplicações de demonstração que fiz ao lidar com cada quadro de animação para qualquer tipo de sprite como sua própria textura - e essa coleção de texturas é armazenada em um dicionário. Isso parece funcionar para mim e combina muito bem com meu fluxo de trabalho, pois costumo fazer minhas animações como arquivos gif / mng e extrair os quadros para pngs individuais.
Existe uma vantagem notável de desempenho na renderização a partir de uma única folha e não nas texturas individuais? Com um hardware moderno capaz de atrair milhões de polígonos para a tela uma centena de vezes por segundo, isso importa para meus jogos 2D, que lidam apenas com algumas dúzias de retângulos de 50x100px?
Os detalhes de implementação de carregar uma textura na memória gráfica e exibi-la no XNA parecem bastante abstratos. Tudo o que sei é que as texturas são vinculadas ao dispositivo gráfico quando são carregadas e, durante o ciclo do jogo, as texturas são renderizadas em lotes. Portanto, não está claro para mim se minha escolha afeta o desempenho.
Eu suspeito que existem algumas boas razões para a maioria dos desenvolvedores de jogos em 2D parecer usá-los, mas eu não entendo o porquê.