我一直在查看Haxe / OpenFL / Flixel的网站,但我很难理解每个站点的用途。
据我所知:
Haxe是一种可以部署到多个平台的语言。OpenFL与Flash有关。Flixel是一个用来帮助你制作游戏的库。
有人能纠正我/说得更清楚吗?
发布于 2013-12-21 01:31:48
哈克
引用haxe.org
Haxe是一个开源工具包,基于现代、高级、严格类型化的编程语言、交叉编译器、完整的跨平台标准库以及访问每个平台的本地功能的方法。
语言:
Haxe是一种编程语言。它类似于AS3,C#等。它是严格类型的,但是有很好的类型推理。它具有许多强大的特性,如模式匹配、Enum (ADTs)、宏等。这些功能无论您编译到哪个目标,都是可以工作的。
标准库:
String、Int、Float、Date、Map等,还有一些有用的跨平台代码,比如串行化、Xml、Json、格式化等。haxe包中的内容,无论您编译到哪个目标,都能正常工作。js.html有DOM外接程序,flash有Flash的外接程序,等等。sys包,它可以在“后端”目标上使用: C++、Java、Neko、HashLink、Python和Lua。它也可以在hxnodejs库的JavaScript/Node上使用。其他内容:
与其他编译器相比,Haxe编译器速度非常快。这本身就是个卖点。还有宏,它可以让您以一种非常强大的方式进行大量的预处理。还有像Haxelib这样的工具,它可以让你链接到第三方库。
OpenFL
当Haxe刚开始的时候,Flash仍然是一个很大的目标,它被安装在所有的地方,对于制作游戏来说是很棒的。许多Flash开发人员喜欢Haxe,因为它速度快、类型安全、开源,并为他们提供了更多的特性。但是Flash (精灵,图形,电影剪辑,事件)只在flash上工作,而不是在手机上,或者在HTML5上,这是一个问题,当闪存开始变得不那么流行。
OpenFL所做的就是让Flash在其他Haxe目标上工作。所以你写了一个Haxe游戏,目标闪光灯API使用精灵,图形和闪存风格的代码。然后,您希望编译到C++ (用于目标移动等)。OpenFL允许您的Haxe代码使用Flash,即使是针对C++或JavaScript。例如,OpenFL不仅为闪存,而且为C++和JavaScript创建flash.graphics.DisplayObject类。因此,如果您知道如何编写Flash游戏,那么您已经接近编写OpenFL游戏了。
OpenFL还有一些很好的工具,可以使您的游戏更容易部署到特定的平台上。在Haxe目标是" JS“、" SWF”、" C++“的地方,OpenFL平台是"iOS”、"Android“、"Switch”、"HTML5“、"Windows”等。当你听说Haxe目标是移动设备时,很多时候都是OpenFL,因为它与Haxe一起编译代码(包括C++、JS、SWF等),然后打包这些用于移动的二进制文件。
弗利塞尔
Haxe是一种语言、编译器和标准库。
OpenFL在此基础上添加了跨目标工作的Flash。
HaxeFlixel在此基础上更进一步,并提供了在OpenFL上工作的特定于游戏的API。
一个例子说明了这一切是如何一起工作的:
摘要
Haxe是一个语言、编译器、工具包和标准库。它为跨平台代码提供了最基本的工具。
OpenFL是建立在Haxe上的,它为多个目标(Flash、C++、JavaScript)提供了Flash,并使其易于编译到许多平台上: web、原生平台、iOS、安卓、任天堂交换机等。
HaxeFlixel是建立在OpenFL之上的--它使用OpenFL提供的API来创建一个特定于游戏的框架,该框架具有高性能,易于制作2D游戏。
发布于 2013-12-19 21:37:17
我最近才发现HaxeFlixel,我很喜欢它!我是用Flixel在AS3中制作游戏的,现在我可能再也不会回去了!
所以,试着回答你的问题(以及我理解的方式):
哈克斯是最底层的。它是一种可以编译成Flash、Windows、Android、iOS等的编程语言。
OpenFL是一种软件开发工具包,它使用Haxe使游戏通过Haxe更容易、更流畅地工作,并允许您轻松地利用Haxe兼容性的力量,同时不必处理大量麻烦和您可以进入的问题。它为您处理了许多基本的东西,并使代码更容易编写。
HaxeFlixel是一个2D游戏框架,基于亚当原子的FlixelforAS3和Flixel的光子风暴组合。它使得在AS3/Flixel中使用几乎相同类型的代码制作2D游戏变得更容易。
刚开始的时候,您应该只需要担心最高级别的问题,在您的例子中,这就是HaxeFlixel。
因此,总结一下: Haxe是一种强大的编程语言。您可以尝试找出如何使用“as- is”来编写代码,这很复杂,或者可以使用多个库中的一个来简化它-- OpenFL就是这些库之一。
您可以单独使用OpenFL,并使用它编写游戏代码,或者可以使用许多不同的框架中的一个来简化它-- HaxeFlixel就是这些框架之一。还有史达琳和HaxePunk框架,它们有各自的优缺点。
意见时间!
我强烈建议坚持使用HaxeFlixel --因为它与Flixel非常相似,所以我设法把它捡起来,学习如何使用它,并在整整一个月的时间内制作了这个完整的游戏,并在同一天发布了Flash、Windows和Android版本--考虑到我以前从未碰过Haxe,也从未有时间开始关注安卓开发,这一点非常突出。顺便说一句,那个游戏的源代码是完全开源的,所以可以随意钻研,看看我是怎么做的。
HaxeFlixel的社区也很棒,人们会帮你解答问题。
跳进并开始使用HaxeFlixel并不太难:
http://haxeflixel.com/documentation/getting-started/
按照这些步骤,您至少可以在几分钟内启动并运行一个Hello, World! (不包括下载和安装所有东西所需的时间)。就像我前面提到的,直到你对它更满意为止,只需按照Haxe和OpenFL的指示行事,但是暂时不要去想它!
祝好运!如果你在任何地方都能做到就告诉我!
https://stackoverflow.com/questions/20687000
复制相似问题