- Una herramienta de autoría de animación 2D de nueva generación desarrollada con C#, Avalonia y SkiaSharp, que reimplementa de forma moderna las funciones de Flash
- Funciona en Linux, Mac y PC, y ofrece un entorno de producción completo con línea de tiempo, dibujo vectorial, símbolos, tweening y scripting
- Compatible con la importación de archivos .fla/XFL, por lo que permite abrir y modificar proyectos existentes de Flash
- Incluye funciones integradas de producción como un sistema de scripting basado en C#, un convertidor de ActionScript y un editor de sonido incorporado
- Es un entorno de autoría de código abierto, cuyo punto clave es heredar el legado de Flash mientras ofrece un flujo de trabajo moderno
Descripción general del proyecto
- Una herramienta completa de autoría de animación 2D pensada con la idea de cómo se vería Flash si se hubiera creado de nuevo en 2026
- Construida desde cero con C#, Avalonia y SkiaSharp
- Compatible con Linux, Mac y Windows
- Incluye todas las funciones principales de Flash, como línea de tiempo, herramientas de dibujo, biblioteca de símbolos, tweening y scripting
- Gracias a la función de importación de archivos .fla/XFL, se pueden abrir y editar proyectos existentes de Flash
- Mediante un transpilador de ActionScript → C#, también es posible reutilizar código de scripting existente
Sistemas principales
- Ofrece funciones como pestañas de múltiples documentos, guardado automático, serialización de proyectos, gestión de escenas y configuración del escenario
- Estructura de guardado en archivos
.anim en formato de carpeta o comprimido, basada en JSON + SkiaSharp
- Permite personalizar el tamaño del escenario, el color de fondo, la velocidad de cuadros y más
Motor y herramientas de dibujo
- Motor vectorial basado en DCEL (lista de aristas doblemente conectada) que recrea el modo de dibujo por fusión de Flash
- Compatible con 5 modos de pintura: Paint Normal, Behind, Fills, Selection e Inside
- Incluye 17 herramientas de dibujo
- Brocha, lápiz, línea, rectángulo, círculo, arco, borrador, transformación, bote de pintura, cuentagotas, texto, cámara y más
- Permite control detallado con detección de presión, suavizado, transformación libre y zoom/paneo
Sistema de objetos y símbolos
- Compatible con varios tipos de objetos como Shape, Text, Rich Text, Bitmap y Symbol Instance
- Implementa por completo la estructura de símbolos de Flash, como Graphic, MovieClip, Button y RichText Symbol
- Con la función Convert to Symbol, los objetos seleccionados pueden convertirse en símbolos reutilizables
- Todos los recursos se gestionan centralmente desde la Symbol Library
Línea de tiempo y animación
- Ofrece una línea de tiempo multicapa y un sistema de fotogramas clave
- Tipos de capa: Normal, Guide, Mask, Folder, Camera, Sound
- Compatible con Classic Tween, Motion Tween y Shape Tween
- Permite edición de trayectorias de movimiento basada en Bezier, animación de cámara y sincronización de sonido
- Compatible con funciones de easing (Linear, Quad, Cubic, Sine, Expo, Back, Bounce, Elastic) y curvas personalizadas
Estilos y efectos
- Relleno (Fill): color sólido, gradientes lineales/radiales y patrones
- Trazo (Stroke): configuración de grosor, color, estilo de extremos/uniones y límite de miter
- Filtros y efectos: Blur, Drop Shadow, Glow, Bevel, Adjust Color y más
- Se pueden combinar varios filtros en cadena
Funciones de selección, alineación y transformación
- Compatible con selección rectangular/libre, transformación de grupos, curvatura de trazados y snapping
- Con las herramientas de alineación y distribución se puede ajustar el espaciado y la posición entre objetos
- Compatible con hasta 100 pasos de Undo/Redo, además de fusión de comandos y ejecución por lotes
Importación y exportación
- Permite cargar proyectos de Flash mediante la importación de archivos XFL/.fla
- Compatible tanto con la exportación a SWF como con la exportación a HTML5/Canvas
- Incluye conversión Bezier, horneado de tweens y compilador de Shape
Scripting y automatización
- El motor de scripting en C# basado en Roslyn permite una automatización de autoría de nivel igual o superior a JSFL
- Ofrece APIs de documento, línea de tiempo, capas, selección, gráficos y biblioteca
- Permite ejecutar código en momentos específicos de reproducción mediante scripts de fotograma
- Incluye un convertidor de ActionScript 3 → C# y un parser/lexer de AS3
- Ofrece soporte de depuración con motor de reproducción de scripts, API de detección de entrada y panel de salida
Audio y texto enriquecido
- El editor de sonido incorporado permite mostrar formas de onda, cortar/pegar y reproducir sincronizado con la línea de tiempo
- Gestiona la entrada y salida de audio con la biblioteca NAudio
- El motor de texto permite un control detallado de tipografía, tamaño, color, alineación, espaciado entre caracteres e interlineado
- Gracias al renderizado de trazados de glifos, el texto puede animarse en forma vectorial
UI/UX
- Compatible con un sistema de paneles acoplables estilo VS y ventanas flotantes
- Incluye paneles como línea de tiempo, propiedades, biblioteca, herramientas y selector de color
- Ofrece gestión de documentos por pestañas, paneles con auto-ocultación, presets de zoom y editor de perfiles de grosor de línea
Progreso del proyecto y apoyo
- Actualmente está en desarrollo activo y se siguen agregando funciones de forma continua
- Es posible apoyar el desarrollo a través de la página de patrocinio en Patreon
- Está previsto seguir publicando actualizaciones del proyecto en Newgrounds
1 comentarios
Comentarios en Hacker News
Antes hacía juegos en Flash. Mi perfil de Newgrounds todavía sigue ahí
La ventaja de Flash era que ofrecía un entorno donde programadores y artistas podían trabajar juntos. El artista hacía la animación en un archivo FLA y me la enviaba, y yo solo tenía que copiarla dentro del proyecto. Si hacía falta, también podía ajustar un poco los fotogramas para que se viera más natural
Hoy en día trabajo con Love2D, y el control de versiones es mucho mejor. Antes administrábamos los archivos como “GameName-1.fla”, “GameName-2.fla”, etc. Más adelante se pudo separar ActionScript, pero el FLA seguía siendo una masa binaria
La animación vectorial de Flash todavía está por encima de las herramientas actuales basadas en sprites. La animación del jefe de Clock Legends que hice hace tiempo tenía cientos de fotogramas, pero el archivo FLA pesaba apenas unos 23 MB. Me emociona que un proyecto así pueda volver
Cuando trabajaba en Adobe, hice un crawler de Flash. Empezamos alrededor de 2008~2010 rastreando desde el millón de sitios mejor rankeados en Alexa
Usábamos Firefox sin interfaz y un reproductor Flash personalizado para volcar y analizar datos de ejecución. Montamos un clúster en un centro de colocación en Bucarest, y por problemas como límites de peso o ampliaciones de RAM yo viajaba seguido en persona
Usamos tecnologías tempranas como Nutch, Hadoop y HBase, y visualizábamos los resultados en una base SQL y una UI. Los pasantes terminaron completándolo y aprendieron muchísimo; algunos ahora trabajan en Silicon Valley
Con esta herramienta también encontramos muchas vulnerabilidades de seguridad. Si Adobe todavía conserva esos datos, quizá sería buena idea donarlos al Computer History Museum
Flash sigue siendo la plataforma de desarrollo más divertida que he usado en mi vida
Poder dibujar directamente, conectarlo con código y trabajar sin tener que volver a contar fotogramas era comodísimo. Todavía extraño esa época en la que hacía juegos en mi cuarto con una copia pirata de Flash MX 2004 Pro (o Flash 8)
Construct y GameMaker están bien, pero no tienen la misma diversión que Flash. Si saliera un nuevo Flash, me pondría muy feliz
Sorprende que exista una herramienta open source capaz de abrir y editar directamente archivos .fla / XFL. Si no solo los reproduce sino que además permite modificarlos, eso tendría un gran valor en términos de retrocompatibilidad
A algunos les dio la impresión de que, por lo inconsistente del estilo, parte del texto fue generado por un LLM. La puntuación y el uso de mayúsculas varían bastante, mientras que la parte de resumen está escrita con una gramática perfecta
Expresiones como “Not just play them back — edit them” les sonaron especialmente artificiales. Aun así, le desean éxito al proyecto
Durante los últimos 15 años, a menudo he pensado que “al mundo le hace falta otra vez algo como Flash”. Flash fue una herramienta con la que toda una generación aprendió arte, juegos, música y animación
Parece que para la generación actual ese papel lo cumplen Minecraft y Roblox
Todavía se puede correr Flash MX 2004 con Wine, pero me gustaría que existiera una versión abierta con actualizaciones regulares
ToonBoom es una excelente herramienta de animación y Construct 2 es un buen motor de juegos, pero no existe una herramienta híbrida que combine animación y código con tanta naturalidad como Flash
En Flash podías hacer historietas sin saber ActionScript, e ir agregando código poco a poco hasta convertirlas en juegos. Era una estructura realmente genial
Consideran que no es un buen comienzo presentarlo como open source y abrir primero un Patreon. Sobre todo cuando todavía no hay ejemplos funcionando ni videos, pedir apoyo de pago reduce la confianza
En 2012, alguien creó la librería JavaScript IvanK.js para recrear la API de Flash en la web. Necesitaba WebGL, y en esa época todavía tenía poco soporte
Aun así, permitió portar algunos juegos Flash a la web con bastante rapidez
Enlace a la demo
Se mencionó Haxe como sucesor de Flash, pero en realidad se parece más a un reemplazo de ActionScript
El verdadero atractivo de Flash era la combinación entre herramienta gráfica y scripting. Que un lenguaje se parezca no basta para dar la misma experiencia
Sitio oficial de OpenFL
Algunos piensan que Adobe debería haber liberado Flash como open source. De haberlo hecho, quizá habría podido seguir liderando el mercado de herramientas de desarrollo de pago