Comecei a ler sobre a tecnologia da Web disponível para jogos baseados na Web apenas com Javascript, mas não tenho nenhum feedback sobre SVG com HTML5. É uma escolha viável? Ele tem um bom desempenho em comparação com outras técnicas, como Canvas, DOM & CSS Transformation, etc.
performance
web
svg
HoLyVieR
fonte
fonte
Respostas:
SVG é suportado em HTML5; se o navegador que seu player está usando suporta, é uma história diferente.
Dependendo de suas necessidades, você deve conferir o RaphaelJS . O Raphael fornece suporte semelhante ao SVG para o IE, mudando para VML ao renderizar para o IE. O Raphael fornece muitas funcionalidades, incluindo animações e suporte à fonte Cufon. Definitivamente vale a pena dar uma olhada.
Como o SVG faz parte do DOM, é muito simples anexar eventos do DOM como "click" e "pairar" nos elementos SVG criados. Isso pode tornar o SVG mais adequado para monitores do tipo HUD, em vez de animar sprites etc.
Você provavelmente tem muitos testes pela frente para determinar as características de desempenho relativo do SVG versus tela, no entanto.
A manipulação direta de DOM provavelmente será a pior de todas. À medida que você altera as coisas no DOM, o mecanismo de layout do navegador recalcula o layout da página para acomodar suas alterações, o que provavelmente prejudicará o desempenho do seu jogo. Se você precisar seguir esse caminho, prefira CSS (especialmente recursos específicos do CSS3, como transformações e quadros-chave).
fonte
Dê uma olhada neste site para ver a compatibilidade com SVG. No momento, é desonesto, na melhor das hipóteses, e eu não o recomendaria para outra coisa senão demos de teste para vitrines.
Não espere que as pessoas usem o melhor e mais recente navegador.
Eu acho que o uso do SVG seria um grande erro e afastará seus usuários quando virem coisas quebradas.
fonte
Você ficaria muito melhor usando o Canvas. Nenhum deles é suportado no IE, e o canvas é conhecido por ser uma tecnologia de jogo viável baseada na Web; além disso, possui uma velocidade de renderização decente, especialmente no Chrome (e aparentemente também no IE9, de acordo com as demos iniciais; não tentei recentemente). Se você precisar segmentar versões mais antigas do IE e / ou plataformas móveis, atenha-se ao DOM antigo simples, que não possui um desempenho muito bom, mas ainda é aceitável para jogos simples (por exemplo, Pacman ).
fonte
Resposta curta sim.
Resposta longa,
Ainda trabalho em um ambiente totalmente dependente do IE6 e usei essa maravilhosa biblioteca para gráficos. (que usa VML para IE6-IE8) Eu definitivamente adoro o canvas e o prefiro para escrever jogos com js. Portanto, se você quiser criar um jogo em svg, digo: faça, outros jogos foram criados usando-o (veja exemplos do Raphael). Independentemente de você ainda estar usando o JS para fazer isso, por isso, se você quiser fazer a transição para a tela, não será tão doloroso.
fonte