O que é melhor usar folhas de animação ou gifs? Uma vantagem dos GIFs em relação às Folhas de animação é que você não precisa pensar em quadros indo muito rápido ou muito devagar por causa do seu código e atualizando-os em tiques adequados.
Quais são as desvantagens do uso de gifs e as vantagens das Folhas de animação sobre os gifs?
animation
graphics-programming
spritesheet
Arek Żyłkowski
fonte
fonte
One advantage Gifs have over Animation Sheets is that you don't have to think about frames going too fast or too slow
Porquê isso? Em que você está confiando para fazer essa suposição? Uma biblioteca? A especificação do formato do arquivo? Um arquivo GIF é ainda apenas de dados, você ainda precisa de código para interpretá-lo (torná-lo na velocidade correta)Respostas:
Desvantagens do GIF:
Com o formato personalizado, todos esses itens são resolvidos muito rapidamente. Você tem muito mais controle sobre o formato da imagem, qualidade, transparência, acesso aleatório e compactação (incluindo formatos compatíveis com GPU, DXT). Ainda melhor, você pode priorizar os recursos necessários.
A declaração acima é enganosa. Sincronizar fps GIF com fps reais de jogos não é muito diferente de sincronizar animação de sprites personalizados. Nos dois casos, você tem exatamente a mesma configuração - uma lista de quadros, a taxa de quadros desejada e os eventos de renderização. Não há pó mágico no GIF - você terá que descompactar o GIF em planilha de qualquer maneira, o que anula o objetivo.
É claro que alguns mecanismos de jogo podem ocultar alguns dos problemas de GIF por trás das cortinas, mas o mesmo pode ser feito com as planilhas de forma melhor.
Dito isso, existem alguns casos em que os GIFs podem funcionar . Por exemplo, GUIs HTML / CSS, mas elas são bastante raras e exigem recursos por si mesmas.
fonte
background-image
animação de posição CSS , onde a animação é destacada em uma imagem grande, que é movida por compensações.Para usar qualquer arquivo de imagem como textura em um jogo, deve haver uma textura criada na GPU e os dados de pixel no arquivo de imagem devem ser carregados nessa textura.
As GPUs não suportam muitos dos recursos suportados pelos arquivos de imagem nas CPUs. Eles não suportam a compactação JPG, não suportam a compactação PNG e, com particular referência aos GIFs, não suportam a animação automática .
Portanto, mesmo que você tenha usado um arquivo GIF, ainda assim precisará escrever sua própria animação e código de tempo. O GIF não oferece nada para você.
fonte
O GIF tem uma paleta de cores limitada. (255) Você também deve implementar a análise e animação do GIF. Portanto, não há avanço no tempo nem nos aspectos técnicos do formato.
fonte