Desde la creación de Future Splash Animator a mediados de la década de los noventa y ahora llamado Flash CS3, la forma de ver los sitios web solo tenían una manera estática de ser y las animaciones se podían observar solo en GIF animados o algunos Applets de Java.
Flash llego para cambiar todo, lamentablemente no se desarrolló bajo un estándar libre y digo lamentablemente por que la tecnología usada por Flash es excelente y nos vuela la mente al imaginar que fuese desarrollado bajo un estándar libre. esto no significa que que para quienes nos inclinamos a la tecnologías libres, dejamos de un lado el uso de archivos de video y animación vectorial creados con Flash por una decisión meramente radical, no obstante soy de los que creo que las cosas se pueden hacer de otra manera (sencilla o difícil) que nos daría como resultado un producto similar.
Ya desde hace algún tiempo vengo investigando la animación de elementos vectoriales para la web y no es que crea que he descubierto el agua tibia, más bien creo que nos cansamos de ver lo mismo todos los días y nos preguntamos ¿Que tal si las cosas fueran de otra manera? eso mismo me pregunto con la tecnología usada por Flash, cuando hablamos de Flash nos viene a la mente el uso de una herramienta autor propietaria, incluso si decimos GIF hasta hace poco nos recordaba una de las patentes más propietaria que he visto.
JavaScript permite hacer animaciones a objetos (vectoriales y mapas de bits), pero esto es verdaderamente complejo y no tengo idea si existe al menos una herramienta autor que permita fácilmente hacer animaciones con JavaScript; existen algunas librerías como Mootools, Scriptaculous entre otros, pero están hechos para otros objetivos.
La más reciente alternativa sería un desarrollo de un estándar que permita resultados similares a los que se logran con Flash, ya desde hace algún tiempo se viene desarrollando un estándar llamado SVG 1.1 y 1.2 (Scalable Vector Graphics) un lenguaje que permite implementar gráficos vectoriales e imágenes de mapas de bits, a todos estos elementos se le pueden aplicar alguna etiquetas que permiten animación bidimensional de la misma manera que no hace Flash y muchas cosas más como filtros.
Hace tiempo estuve trabajando en PDVSA en donde se nos solicito un desarrollo de una herramienta autor que permitiera el uso de el estándar SVG y así crear animaciones para la web y presentaciones multimedia.
El desarrollo de esta herramienta estuvo por parte de tres personas únicamente (algo que desde un principio critique) más adelante se unió al proyecto una persona más. Mi rol en este equipo de desarrollo fue ayudar a crear una interfase amigable al usuario y que permitiera específicamente en una primera fase hacer presentaciones animadas, el desarrollo por parte de los programadores no estuvo desde un principio llevada de la mejor manera y esto lo que llevo al fracaso, por mi parte desarrollé todo lo requerido para una interfase y en algunos casos desarrollé tres modelos de interfases y widgets, también estuve haciendo algunas animaciones a manera de test.
El desarrollo de una herramienta de esta envergadura no es nada fácil pero para nada imposible, el estándar existe, se debe desarrollar una interfaz que pueda generar archivos con etiquetas que contengan animación. Algo tan sencillo como.
<animate attributeName=”fill” begin=”0″ dur=”1″ fill=”freeze” keyTimes=”0;0.5;1″ values=”#FF0000;#FFFFFF;#FFFFFF” />
Esto significa que un relleno cambia de color en un segundo de rojo a blanco, también se le puede decir que sea una rotación, escala o traslación en X o Y.
Esta herramienta luego de generar el archivo SVG debe tener un Plugin que sea capaz de pasar estos atributos a un navegador o visualizador. Es decir debe existir la herramienta de diseño y el visor, dos elementos esenciales para el objetivo.
Adobe antes de adquirir a Flash estuvo haciendo este trabajo, desarrollaba un plugin capaz de interpretar las animaciones SVG, luego que Adobe adquiere Flash no tiene por que amargarse la vida por otra tecnología similar a Flash (ya tienen el sartén por el mango). “El plugin de SVG fue abandonado hace algún tiempo por la gente de Adobe”.
El navegador Opera recientemente a implementado un plugin Tiny SVG 1.2 (usada para celulares) que permite animaciones pero que se basan el el estándar Tiny SVG 1.2 que se limita a solo animaciones y no reproduce audio y algunas otras cosas que la especificación SVG 1.1 si tiene, pero bueno creo que es lo más cercano a un player de SVG que tenemos, también existe un esfuerzo de la gente que desarrolla Batik echa en Java que permite leer SVG bajo el estándar SVG 1.1 y 1.2, solo que Batik SVG Toolkit no usa algún plugin para incorporarlo en un navegador como Firefox, Batik SVG Toolkit corre independientemente como un visor. Existen algunos otros esfuerzos aislados pero la verdad no tan relevantes como los anteriores mencionados.
Inskcape desea en solo 2 versiones más incorporar animaciones en el estándar Tiny SVG 1.2 (para celulares) esto sería lo más cercano que podemos conseguir a una herramienta autor en Software Libre para desarrollar animaciones SVG.
En el Foro Mundial de Conocimiento Libre de 2007 a manera improvisada dicte una charla de Animación SVG, lamentablemente muy pocos conocen ese termino y afortunadamente las pocas personas que estuvieron en la charla les pareció atractivo el tema, al final les enseñe que las láminas de la presentación estaban hechas con SVG animado.
Voy a poner algunos archivos para su descarga, de verdad son algo sencillo pero pueden apreciar animación SVG, solo corren o se pueden ver con Opera Browser (hay versiones para Debian) o Batik SVG Toolkit para quienes tengan Internet Explorer pueden usar el viejo plugin de Adobe (abandonado) para correr en Windows.
Animaciones SVG para descargar
En estos día estaré subiendo algunos otros archivos para quienes les interesa el tema
Xavier Araque


5 comments
Comments feed for this article
25 Septiembre 2008 a 8:17 PM
Julcar
Yo siempre pensé en el SVG para realizar animaciones en lugar de flash, pues es a mi parecer mas facil.
8 Noviembre 2008 a 12:10 PM
villa7
hola.
Tengo una duda sobre el inkscape y el svg-tiny. Hay alguna forma de poder convertir un svg creado con inkscape a svg-tiny (svg1.2)?? Es que lo necesito para poder agregar un svg a netbeans. contestame al email si puedes, arcayanacity@hotmail.com
Saludos
14 Diciembre 2008 a 6:59 PM
Rob
hay un proyecto en sourceforge para crear un framework para animaciones svg mediante javaScript que podría tener resultados interesantes, pero aún está arrancando
14 Diciembre 2008 a 6:59 PM
Rob
hay un proyecto en sourceforge para crear un framework para animaciones svg mediante javaScript que podría tener resultados interesantes, pero aún está arrancando…
Por cierto, un artículo muy interesante!
5 Febrero 2009 a 7:44 PM
jconejo70
Seguimos batallando contra el imperio de las licencias, estoy desarrollando un proyecto en java me y estoy comenzando a utilizar inkscape y me parece excelente difruto mucho con esa herramienta ….