Accesibilidad

Artículo de Flash

 

Varicose-g: Gráficos de alto rendimiento en Flash 8


Contenido

El concepto original: una arteria en movimiento

Al navegar por mi colección de archivos FLA, me encontré con un experimento llamado vein-1 que fue creado por un compañero mío desarrollador de Flash, Mike Johnson. Tuve la idea de recrearlo en ActionScript 2 y animar un poco la implementación. El resultado fue una arteria en constante movimiento con distintas ramas de venas y capilares que se bifurcaban en puntos aleatorios (véase la figura 1).

No voy a explicar con detalle el código utilizado en el experimento original, pero si están interesados, pueden descargarse la fuente desde mi blog*.

El experimento original: una arteria en constante movimiento con venas que se bifurcan

Figura 1: El experimento original: una arteria en constante movimiento con venas que se bifurcan

Brevemente, la clase VeinManager crea una única instancia de una clase Vein, que se transforma en la arteria. En cada marco, la clase Vein cambia aleatoriamente su ángulo de movimiento y dibujo un segmento lineal de longitud aleatoria junto a ese ángulo. También de forma aleatoria crea nuevas clases de Vein de menor grosor y con el mismo ángulo inicial y localización que la arteria. Estas venas incipientes realizan las mismas funciones (dibujar segmentos lineales y crear ramificaciones propias) para un número aleatorio de marcos.

Este experimento obviamente generó muchos segmentos lineales y agotaba rápidamente la capacidad de Flash Player para componer los vectores. Para reducir el impacto de la composición vectorial, las instancias Vein en el experimento original se diluyen y desaparecen solas del escenario al cabo de pocos segundos. En Flash Player 8, también pude hacer venas persistentes utilizando una rutina personalizada de conversión al formato de mapa de bits.