Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我可以使用libGDX制作桌面游戏吗?_Java_Libgdx - Fatal编程技术网

Java 我可以使用libGDX制作桌面游戏吗?

Java 我可以使用libGDX制作桌面游戏吗?,java,libgdx,Java,Libgdx,我对libGDX有点陌生,我不太明白为什么gdx安装ui中需要安卓模块? libGDX不是用来制作桌面游戏吗?有没有办法创建一个桌面项目来避免Android项目(仅限core+桌面)?签出,在这里,您可以看到您使用您的core项目来放置所有非特定的平台代码,而桌面项目就是您希望为桌面运行时运行的项目。根据官方文档(以及我过去的实践)是的,你可以。你只需删除android项目,一切都完成了。但是使用Java进行桌面版游戏开发是非常奇怪的,因为有.NET甚至是.NET(Mono)的开源实现。使用JV

我对libGDX有点陌生,我不太明白为什么gdx安装ui中需要安卓模块?

libGDX不是用来制作桌面游戏吗?有没有办法创建一个桌面项目来避免Android项目(仅限core+桌面)?

签出,在这里,您可以看到您使用您的core项目来放置所有非特定的平台代码,而桌面项目就是您希望为桌面运行时运行的项目。

根据官方文档(以及我过去的实践)是的,你可以。你只需删除android项目,一切都完成了。但是使用Java进行桌面版游戏开发是非常奇怪的,因为有.NET甚至是.NET(Mono)的开源实现。使用JVM,你无法获得好的性能,特别是在游戏方面(否则将非常困难和肮脏),因为没有用户定义的值类型,所有泛型只能有引用类型作为类型参数,等等。

也可以将Main.java和/lib文件夹的内容从桌面移动到核心项目,以删除前者。您需要修改构建路径设置,以使其工作,但我认为这是可行的在这种情况下,最好只有一个项目。

好吧,是的。我已经读了所有内容。问题是:我可以避免使用Android模块,并且可以简单地将其删除而不出现问题吗?你应该能够做到这一点。注意,默认资产会被放入Android项目中(因为它的构建工具很糟糕),因此,如果你使用核武器,你会希望将这些资产放在桌面或核心项目中。因为@P.T.的意思,我只是从构建路径中删除src文件夹,其余的保持不变。但是,我确实打算在不久的将来将我的游戏移植到Android上……我不同意桌面JVM不能在游戏中获得良好的性能s、 好的,“Good”可能并不精确,但当使用其他VM或本机代码执行同一任务时,您肯定可以获得更好的性能和更少的GC阻塞。(当然,只有当您的Java代码会遇到一些与性能相关的JVM限制时,这才是正确的……但祝您好运,尽量不要碰到这些限制。)当然,对于许多游戏来说,即使是JVM也足够了。一个对CPU没有太大压力的简单游戏可能不值得学习另一种语言。这一点我同意。使用JVM的第一人称射击手需要缓存所有东西,以防止GC杀死帧速率。简单的东西就可以了。我很难相信.NET会如此庞大与Java相比,它有很大的优势(即C#)。问题在于本机库绑定和GC。不要忘记,因为它运行在JVM上,所以也可以在Linux或MacOS上使用它。而.NET则不是这样。