OpenFL es una plataforma y un marco de software de código abierto y gratuito 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 objetivos, incluidos iOS, Android, HTML5 (opció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]
Desarrollador (es) | Colaboradores de OpenFL |
---|---|
Versión inicial | 30 de mayo de 2013 [1] |
Lanzamiento estable | 9.1.0 [2] / 11 de abril de 2021 |
Repositorio | |
Escrito en | Haxe |
Sistema operativo | Microsoft Windows , macOS , Linux [3] [1] |
Plataforma | Microsoft Windows , macOS , Linux , iOS , Android , Flash Player , HTML5 [3] [1] |
Tipo | Marco de software |
Licencia | Licencia MIT [4] |
Sitio web | www |
Los editores más populares utilizados para el desarrollo de Haxe y OpenFL [9] son:
- Código de Visual Studio (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 las principales 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, estas bibliotecas generalmente se ejecutan en múltiples plataformas como HTML5, Adobe AIR y Android / iOS.
Más de 500 juegos de vídeo han sido desarrollados con OpenFL, [19] incluyendo el BAFTA Award -winning juego papeles, por favor , Rymdkapsel , Lightbot , Noche Funkin' , y Madden NFL Mobile .
Detalles técnicos
OpenFL
OpenFL está diseñado para reflejar completamente la API de Flash. [1] [6] Los archivos SWF creados con Adobe Flash Professional u otras herramientas de creación se pueden utilizar en programas OpenFL. [6]
OpenFL admite la representación en OpenGL , Cairo , Canvas , SVG e incluso HTML5 DOM. En el navegador, OpenGL es el renderizador predeterminado, pero si no está disponible, se utiliza el lienzo (renderizado de CPU). [20] Ciertas funciones ( shape.graphics
o bitmapData.draw
) usarán procesamiento de CPU, pero la lista de visualización permanece acelerada por GPU en la medida de lo posible. [20]
Lima
OpenFL usa la biblioteca Lime para renderizado de bajo nivel. Lime proporciona renderizado acelerado por hardware de gráficos vectoriales en todas las plataformas compatibles. [21] [20]
Lime es una biblioteca diseñada para proporcionar un entorno consistente de "lienzo en blanco" en todos los objetivos compatibles, incluidos Flash Player , HTML5 , Microsoft Windows , macOS , Linux , iOS , Android , consolas, decodificadores y otros sistemas. [20] Lime es una biblioteca multiplataforma de gráficos, sonido, entrada y ventanas, lo que significa que OpenFL puede enfocarse en ser una API Flash y no manejar todos estos detalles. Lime también incluye herramientas de línea de comandos. [20]
Haxe
Haxe es un lenguaje de programación y compilador multiplataforma multiplataforma de alto nivel que puede producir aplicaciones y código fuente, para muchas plataformas informáticas diferentes , a partir de una base de código. [22] [23] [24] [25] Es un software gratuito 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 , binarios y algunos formatos de archivo comunes . [23] [26] 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. [23] [27]
Haxe se originó con la idea de apoyar el lado del cliente y del lado del servidor de programación en un solo idioma, y simplificar la lógica de la comunicación entre ellos. [28] [29] [30] El código escrito en el lenguaje de Haxe puede ser fuente-a-fuente compilado en ActionScript 3 , JavaScript , Java , C ++ , C # , PHP , Python , Lua [31] y Node.js . [23] [26] [32] [33] Haxe también puede compilar directamente SWF , HashLink y Neko bytecode .
Estornino
El puerto Haxe de Starling Framework se ejecuta en Stage3D y admite la representación acelerada por GPU de gráficos vectoriales. [20] Utiliza una implementación Stage3D personalizada y no requiere que la lista de visualización OpenFL funcione. [20] [34]
Referencias
- ^ a b c d "Presentación de OpenFL" . Blog de Joshua Granick . Archivado desde el original el 2 de octubre de 2014.
- ^ "Versión 9.1.0" . 11 de abril de 2021 . Consultado el 22 de abril de 2021 .
- ^ a b "openfl.org" . Archivado desde el original el 26 de octubre de 2014.
- ^ "LICENCIA.md" . Github . Archivado desde el original el 30 de marzo de 2017.
- ^ "README.md" . Github . Archivado desde el original el 13 de agosto de 2015.
- ^ a b c Doucet, Lars (18 de marzo de 2014). "Flash ha muerto, ¡viva OpenFL!" . Gamasutra . Archivado desde el original el 30 de agosto de 2015.
- ^ "Léame de OpenFL" . Github . Archivado desde el original el 27 de abril de 2018.
- ^ "Léame de OpenFL" . Github . Archivado desde el original el 27 de abril de 2018.
- ^ "openfl / openfl" . GitHub . Archivado desde el 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 , FlashDevelop Wiki
- ^ "Inicio> Away3D" . away3d.com . Archivado desde el original el 19 de noviembre de 2010 . Consultado el 27 de abril de 2018 .
- ^ Hoja de ruta 2014 de Away Foundation Archivado 2016-03-06 en Wayback Machine , Away3D Foundation
- ^ away3d 1.2.0 Archivado el 6 de marzo de 2016 en Wayback Machine , adaptado a OpenFL 2.x / Haxe, Haxelib
- ^ Starling Framework Archivado 2018-01-02 en Wayback Machine , Gamua
- ^ openfl / starling Archivado el 30 de marzo de 2017 en Wayback Machine , el "motor de juego multiplataforma", un popular framework Stage3D
- ^ BabylonJS Archivado 01/01/2018 en la Wayback Machine , motor 3D basado en WebGL Web Audio / y JavaScript
- ^ DragonBones Archivado el 30 de diciembre de 2017 en Wayback Machine , plataforma deaparejos depersonajes
- ^ openfl / dragonbones Archivado 2018-04-27 en Wayback Machine , soporte en tiempo de ejecución para la animación esquelética DragonBones
- ^ "Escaparate" . www.openfl.org . Archivado desde el original el 26 de diciembre de 2017 . Consultado el 27 de abril de 2018 .
- ^ a b c d e f g Introducción a Haxe y Starling Archivado el 27 de diciembre de 2017 en Wayback Machine , Comunidad OpenFL, diciembre de 2017
- ^ ¿ Beneficios de usar estornino sobre openfl? Archivado 2017-12-27 en Wayback Machine , Comunidad OpenFL
- ^ "Anuncio de Nicolas del cambio de ortografía en la lista de correo oficial de Haxe" .
- ^ a b c d Ponticelli, Franco (11 de febrero de 2008). HaXe y Neko profesionales . Wiley. ISBN 978-0470122136.
- ^ Ivanov, Michael (24 de mayo de 2011). Libro de cocina de Away3D 3.6 . Packt Publishing Ltd. ISBN 978-1849512817.
- ^ Doucet, Lars (3 de junio de 2015). "Haxe / OpenFL para consolas de juegos domésticas" . Gamasutra . Archivado desde el original el 8 de septiembre de 2015.
- ^ a b Introducción a la biblioteca estándar de Haxe Archivado el 14 de agosto de 2015 en Wayback Machine , Haxe Docs
- ^ API específicas de destino, introducción a la biblioteca estándar de Haxe Archivado el 14 de agosto de 2015 en Wayback Machine , Haxe Docs
- ^ "Entrevista Haxe" . Io Programmo. 2009-04-01: 1–6. Archivado desde el original el 8 de diciembre de 2015. Cite journal requiere
|journal=
( ayuda ) - ^ Grden, John; Mineault, Patrick; Balcánico, Aral; Hughes, Marc; Arnold, Wade (16 de julio de 2008). La guía esencial para el desarrollo de Flash de código abierto . Presione. pag. Capítulo 9 (Usando 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 desde el original el 6 de agosto de 2016 . Consultado el 9 de julio de 2016 .
- ^ "hxnodejs (4.0.9)" . Archivado desde el original el 18 de junio de 2016 . Consultado el 9 de julio de 2016 .
- ↑ Haxe, iPhone & C ++ At Last Archivado el15 de abril de 2012 en el sitio web Wayback Machine , GameHaxe
- ^ Starling para OpenFL Archivado el 30 de marzo de 2017 en Wayback Machine , "El motor de juego multiplataforma", Github
Ver también
- Haxe
- Adobe AIR