libGDX是一个跨平台的游戏库,支持Windows / Mac / Linux / Android / iOS / HTML输出。 Ingress中使用的名称识别也是适度的。
到目前为止,我已经写了
,但是我不仅输出了HTML。
这就是为什么它是额外的版本。介绍桌面版(对于Windows / Mac / Linux)和HTML版(WebGL是稳定版)的开发环境。
因为它是Gradle,所以我不选择环境,但是暂时我将使用NetBeans。
设置
还需要GWT设置,因此最好使用设置工具。
首先,让我们安装一个插件,以便Gradle与您使用的IDE一起使用。
在NetBeans中,转到"工具">"插件">"可用插件",然后检查" Gradle支持"以进行安装。 GWT4NB暂时不是必需的。由于它也在Gradle中执行。
从以下位置下载gdx-setup.jar。
http://libgdx.badlogicgames.com/download.html
下载并运行。如果关联完成,则可以双击它。如果不是,请键入以下命令以启动它。
> Java -jar gdx-setup.jar
然后将启动GUI工具。
在此处仅检查桌面和HTML。我将删除其余部分。
请正确输入通行证。
完成后,在NetBeans中打开项目,然后打开根项目。
之后,库等将自动下载,因此需要一些时间。一段时间后,子项目完成。
您可以看到
根目录下有3个核心,即桌面和html。
核心是不依赖于环境的游戏部分的代码。桌面和html将取决于环境,启动环境等将分别放置。
开发时,过程是使用核心进行开发,使用桌面确认执行,最后使用html确认,然后部署到Web服务器。
当您打开
子项目时,它将被添加到项目中。
它看起来应该像这样:
在桌面上运行
右键单击
桌面项目以打开菜单,然后选择运行。您也可以为gradle任务选择run。
执行结果如下。
在网络上调试执行
现在让我们在Web上,即在浏览器中进行检查。
现在,选择html项目superDev的gradle任务。
执行
并启动服务器后,在浏览器中将其打开,如下所示。
屏幕有点小。桌面版本的默认大小为640x480。
网络版本似乎为480x320。因此,更改html项目的启动部分的代码。
有一个名为HtmlLauncher的类,您可以在此处看到它指定大小(480,320)。
在此处更改源之后,单击刚打开的浏览器左上方的按钮。
将出现一个名为
Compile的项目,因此单击它。它将重新加载并显示。
它已经成长了。
生成要部署到Web服务器的内容
这是用于调试。我想将其部署到Web服务器(例如Apache)。
在这种情况下,请执行html项目的名为dist的任务。
编译完成后,将在build / dist文件夹中部署文件。
部署到JavaEE容器以外的容器时,删除WEB-INF文件夹。另外,删除index.html左上方的开发按钮,例如将其隐藏。
现在,您拥有一个适用于浏览器的批准方式。
你为什么至今没有介绍
GWT用于HTML转换功能。由于libGDX是跨平台的,因此实现部分可以很好地分开,但是用户的代码并不是那么容易。这是因为GWT具有比Android和RoboVM窄得多的Java API支持。我什至没有printf。
另外,如果将JAR喂入JavaSE,Android和RoboVM,它们将被转换并在未经许可的情况下工作。您几乎可以按原样使用现有库。但是GWT却没有。来源也必须是公开可用的。 Javascript不是从类文件生成的,只是Java源代码的一种转换(尽管它与超老设计兼容)。
尽管
几乎是使用WebGL函数绘制的,但HTML代码根本没有混入用户代码中,几乎只使用了libGDX API,并且Windows / Mac / Linux版本相同的代码可以正常工作,因此用户不需要意识到这一点。您要做的就是找出是否可以正确转换的部分(尽管可能会在您无法转换的时候发生)。
因为它是
,所以我认为最好使用libGDX提供的集合。您也应该在Android和iOS上积极使用它们。就性能而言,它比使用ArrayList等有效得多,并且有些方法在游戏开发等中实际上是有用的。
libGDX的HTML版本使用GWT,但是代码不包含GWT或HTML代码。因此,GWT是一个黑匣子,它用作将Java变成JS的机器。很好,没有将应用程序置于GWT或HTML中的事情。该库有点痛苦,但它可以与基本台式机和智能手机完全相同。
libGDX使用桌面版本,该桌面版本在开发过程中立即启动,因此与HTML版本的JS转换相关的时间减少不是问题。因此,能够迅速发展是有吸引力的。我什至不使用SuperDev模式进行GWT的快速调试。
让我们使用libGDX将相同的代码输出到各种环境,例如PC,智能手机和浏览器!