He comenzado a leer sobre la tecnología web disponible para hacer juegos basados en la web solo con Javascript, pero no tengo comentarios sobre SVG con HTML5. ¿Es una opción viable? ¿Funciona bien en comparación con otras técnicas como Canvas, DOM y CSS Transformation, etc.
performance
web
svg
HoLyVieR
fuente
fuente
Respuestas:
SVG es compatible con HTML5; si el navegador que usa su reproductor es compatible, es una historia diferente.
Dependiendo de sus necesidades, debe consultar RaphaelJS . Raphael proporciona soporte similar a SVG para IE cambiando a VML cuando se procesa para IE. Raphael ofrece una gran cantidad de funcionalidades, incluidas animaciones y compatibilidad con fuentes Cufon. Definitivamente vale la pena echarle un vistazo.
Dado que SVG es parte del DOM, es bastante simple adjuntar eventos DOM como "hacer clic" y "desplazar" a los elementos SVG creados. Esto podría hacer que SVG sea más adecuado para pantallas de tipo HUD en lugar de animar sprites, etc.
Sin embargo, es probable que tenga muchas pruebas por delante para determinar las características de rendimiento relativo de SVG en comparación con el lienzo.
La manipulación directa del DOM probablemente sea la peor del grupo. A medida que cambie las cosas en el DOM, el motor de diseño del navegador volverá a calcular el diseño de la página para acomodar sus cambios, lo que probablemente matará el rendimiento de su juego. Si tiene que seguir esta ruta, prefiera CSS (especialmente características específicas de CSS3 como transformaciones y fotogramas clave).
fuente
Echa un vistazo a este sitio web para ver la compatibilidad SVG. En este momento es dudoso en el mejor de los casos y no lo recomendaría para nada más que probar demostraciones para exhibiciones.
No esperes que la gente use el mejor y más reciente navegador.
Creo que usar SVG sería un gran error y alejará a sus usuarios cuando vean cosas rotas.
fuente
Sería mucho mejor usar Canvas. Ninguno de ellos es compatible con IE, y se sabe que Canvas es una tecnología de juego basada en la web viable; Además, tiene una velocidad de representación decente, especialmente en Chrome (y aparentemente también en IE9, según las primeras demostraciones; no lo he probado recientemente). Si necesita apuntar a versiones anteriores de IE y / o plataformas móviles, adhiérase al antiguo DOM simple, que no tiene muy buen rendimiento, pero aún es aceptable para juegos simples (por ejemplo, Pacman ).
fuente
Respuesta corta si.
Respuesta larga,
Todavía trabajo en un entorno totalmente dependiente de IE6 y tengo usado esta maravillosa biblioteca para gráficos. (que usa VML para IE6-IE8) Definitivamente amo el lienzo y lo prefiero para escribir juegos con js. Entonces, si quieres hacer un juego en svg, digo que lo hagas, se han creado otros juegos con él (ver ejemplos de Raphael). Independientemente de que seguirá utilizando JS para hacerlo, por lo que si desea hacer la transición al lienzo, no será tan doloroso.
fuente