OpenFL es un marco de software y plataforma libre y de código abierto para la creación de aplicaciones y videojuegos multiplataforma . [ 5 ] [ 6 ] Las aplicaciones OpenFL se pueden escribir en Haxe , JavaScript ( EcmaScript 5 o 6+) o TypeScript , [ 7 ] y se pueden publicar como aplicaciones independientes para varios destinos, incluidos iOS, Android, HTML5 (elección de Canvas, WebGL, SVG o DOM), Windows, macOS, Linux, WebAssembly, Flash, AIR, PlayStation 4, PlayStation 3, PlayStation Vita, Xbox One, Wii U, TiVo, Raspberry Pi y Node.js. [ 8 ]
Los editores más populares utilizados para el desarrollo de Haxe y OpenFL [ 9 ] son:
- Visual Studio Code (con complemento)
- HaxeDevelop (admite plegado de código , refactorización de código y depuración interactiva [ 10 ] )
- Sublime Text (con complemento)
- IntelliJ IDEA (con complemento)
OpenFL contiene versiones Haxe de importantes bibliotecas gráficas como Away3D , [ 11 ] [ 12 ] [ 13 ] Starling , [ 14 ] [ 15 ] Babylon.js , [ 16 ] Adobe Flash y DragonBones. [ 17 ] [ 18 ] Debido a la naturaleza multiplataforma de OpenFL, dichas bibliotecas suelen ejecutarse en múltiples plataformas como HTML5, Adobe AIR y Android/iOS.
Se han desarrollado más de 500 videojuegos con OpenFL, [ 19 ] incluyendo Papers, Please , Rymdkapsel , Lightbot , Friday Night Funkin' y Madden NFL Mobile .
OpenFL fue creado por Joshua Granick y actualmente es administrado y mantenido por Chris Speciale, ingeniero de software, miembro de la junta directiva y copropietario. [ 20 ]
Detalles técnicos
OpenFL
OpenFL está diseñado para replicar completamente la API de Flash. [ 1 ] [ 6 ] Los archivos SWF creados con Adobe Flash Professional u otras herramientas de autoría pueden usarse en programas OpenFL. [ 6 ]
OpenFL admite la renderización en OpenGL , Cairo , Canvas , SVG e incluso HTML5 DOM. En el navegador, WebGL es el renderizador predeterminado, pero si no está disponible, se utiliza Canvas (renderización por CPU). [ 21 ] Ciertas características ( shape.graphicso bitmapData.draw) utilizarán la renderización por CPU, pero la lista de visualización permanece acelerada por GPU en la medida de lo posible. [ 21 ]
Cal
OpenFL utiliza la biblioteca Lime para la renderización de bajo nivel. Lime proporciona renderización acelerada por hardware de gráficos vectoriales en todas las plataformas compatibles. [ 22 ] [ 21 ]
Lime es una biblioteca diseñada para proporcionar un entorno de "lienzo en blanco" consistente en todos los destinos compatibles, incluidos Flash Player , HTML5 , Microsoft Windows , macOS , Linux , iOS , Android , consolas, decodificadores y otros sistemas. [ 21 ] Lime es una biblioteca multiplataforma de gráficos, sonido, entrada y ventanas, lo que significa que OpenFL puede centrarse en ser una API de Flash y no en gestionar todos estos detalles. Lime también incluye herramientas de línea de comandos . [ 21 ]
Haxe
Haxe es un lenguaje de programación y compilador multiplataforma y multiparadigma de alto nivel que puede producir aplicaciones y código fuente para muchas plataformas informáticas diferentes a partir de una única base de código. [ 23 ] [ 24 ] [ 25 ] [ 26 ] Es software libre y de código abierto , distribuido bajo la Licencia Pública General GNU (GPL) 2.0, y la biblioteca estándar bajo la Licencia MIT .
Haxe incluye un conjunto de funciones comunes que son compatibles con todas las plataformas , como tipos de datos numéricos , texto , matrices , binario y algunos formatos de archivo comunes . [ 24 ] [ 27 ] Haxe también incluye una interfaz de programación de aplicaciones (API) específica de la plataforma para Adobe Flash , C++, PHP y otros lenguajes. [ 24 ] [ 28 ]
Haxe se originó con la idea de admitir la programación del lado del cliente y del lado del servidor en un solo lenguaje, y simplificar la lógica de comunicación entre ellos. [ 29 ] [ 30 ] [ 31 ] El código escrito en el lenguaje Haxe se puede compilar de fuente a fuente en ActionScript 3 , JavaScript , Java , C++ , C# , PHP , Python , Lua [ 32 ] y Node.js . [ 24 ] [ 27 ] [ 33 ] [ 34 ] Haxe también puede compilar directamente el bytecode SWF , HashLink y NekoVM .
Estornino
La versión Haxe del Starling Framework se ejecuta en Stage3D y admite la renderización acelerada por GPU de gráficos vectoriales. [ 21 ] Utiliza una implementación personalizada de Stage3D y no requiere la lista de visualización de OpenFL para funcionar. [ 21 ] [ 35 ]
Referencias
- 1 2 3 4 "Presentando OpenFL" . Blog de Joshua Granick . 30 de mayo de 2013. Archivado del original el 2 de octubre de 2014.
- ↑ "Versión 9.5.2" . 13 de mayo de 2026. Consultado el 14 de mayo de 2026 .
- 1 2 "openfl.org" . Archivado del original el 26 de octubre de 2014.
- ↑ "LICENSE.md" . Github . Archivado del original el 30 de marzo de 2017.
- ↑ "README.md" . Github . Archivado del original el 13 de agosto de 2015.
- 1 2 3 Doucet, Lars (18 de marzo de 2014). "¡Flash ha muerto, viva OpenFL!" . Gamasutra . Archivado del original el 30 de agosto de 2015.
- ↑ "OpenFL ReadMe" . Github . Archivado del original el 27 de abril de 2018.
- ↑ "OpenFL ReadMe" . Github . Archivado del original el 27 de abril de 2018.
- ↑ "openfl/openfl" . GitHub . Archivado del original el 27 de abril de 2018. Consultado el 27 de abril de 2018 .
- ↑ Soporte de Haxe archivado el 6 de julio de 2015 en Wayback Machine , Wiki de FlashDevelop
- ↑ "Inicio > Away3D" . away3d.com . Archivado del original el 19 de noviembre de 2010. Consultado el 27 de abril de 2018 .
- ↑ Hoja de ruta de la Fundación Away 2014 Archivada el 6 de marzo de 2016 en Wayback Machine , Fundación Away3D
- ↑ away3d 1.2.0 Archivado el 6 de marzo de 2016 en Wayback Machine , adaptado a OpenFL 2.x/Haxe, Haxelib
- ↑ Marco de trabajo Starling archivado el 2 de enero de 2018 en Wayback Machine , Gamua
- ↑ openfl/starling Archivado el 30/03/2017 en Wayback Machine , El "Motor de juegos multiplataforma", un popular framework de Stage3D
- ↑ BabylonJS Archivado el 1 de enero de 2018 en Wayback Machine , motor 3D basado en WebGL/Web Audio y JavaScript
- ↑ DragonBones archivado el 30/12/2017 en Wayback Machine , plataforma de rigging de personajes
- ↑ openfl/dragonbones Archivado el 27/04/2018 en Wayback Machine , Soporte en tiempo de ejecución para la animación esquelética de DragonBones
- ↑ "Showcase" . www.openfl.org . Archivado del original el 26 de diciembre de 2017. Consultado el 27 de abril de 2018 .
- ↑ "Cambios en la organización administrativa" . Comunidad OpenFL . 26 de abril de 2022. Consultado el 17 de noviembre de 2022 .
- 1 2 3 4 5 6 7 Introducción a Haxe y Starling Archivado el 27/12/2017 en Wayback Machine , Comunidad OpenFL, diciembre de 2017
- ↑ ¿ Ventajas de usar Starling sobre OpenFL? Archivado el 27/12/2017 en Wayback Machine , Comunidad OpenFL
- ↑ "Anuncio de Nicolas sobre el cambio de ortografía en la lista de correo oficial de Haxe" .
- ^ Ponticelli, Franco ( 11 de febrero de 2008). HaXe y Neko profesionales . Wiley. ISBN 978-0470122136.
- ↑ Ivanov, Michael (24 de mayo de 2011). Away3D 3.6 Cookbook . Packt Publishing Ltd. ISBN 978-1849512817.
- ↑ Doucet, Lars (3 de junio de 2015). "Haxe/OpenFL para consolas de juegos domésticas" . Gamasutra . Archivado del original el 8 de septiembre de 2015.
- 1 2 Introducción a la biblioteca estándar de Haxe Archivado el 14/08/2015 en Wayback Machine , Haxe Docs
- ↑ API específicas de destino, Introducción a la biblioteca estándar de Haxe Archivado el 14/08/2015 en Wayback Machine , Documentación de Haxe
- ↑ "Entrevista a Haxe" . Io Programmo. 1 de abril de 2009: 1–6 . Archivado del original el 8 de diciembre de 2015.
{{cite journal}}: Para citar una revista se requiere|journal=( ayuda ) - ↑ Grden, John; Mineault, Patrick; Balkan, Aral; Hughes, Marc; Arnold, Wade (16 de julio de 2008). La guía esencial para el desarrollo de Flash de código abierto . Apress. Capítulo 9 (Uso de Haxe). ISBN 978-1430209942.
- ↑ Fisher, Matt (1 de enero de 2013). HTML5 para desarrolladores de Flash . Packt Publishing Ltd. ISBN 978-1849693332.
- ↑ "Hola Lua! - Haxe" . Archivado del original el 6 de agosto de 2016. Consultado el 9 de julio de 2016 .
- ↑ "hxnodejs (4.0.9)" . Archivado del original el 18 de junio de 2016. Consultado el 9 de julio de 2016 .
- ↑ Haxe, iPhone y C++ por fin. Archivado el 15/04/2012 en Wayback Machine , sitio web de GameHaxe.
- ↑ Starling para OpenFL Archivado el 30/03/2017 en Wayback Machine , "El "Motor de juegos multiplataforma", Github
Véase también
- Software que utiliza la licencia MIT.
- marcos de software