Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.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中使用Opengl/DirectX_Java_Opengl_Directx - Fatal编程技术网

如何在Java中使用Opengl/DirectX

如何在Java中使用Opengl/DirectX,java,opengl,directx,Java,Opengl,Directx,我的问题是: 如何在Java中使用Opengl或DirectX 在Java中使用DirectX时,它比Opengl有什么主要优势吗 有没有一种不用API就可以做到这一点的方法 我是否应该使用API,例如: 慢跑 LWJGL JavaFX对制作3D东西有用吗 另外,我正在使用Windows。 有没有其他方法来绘制3D对象 如何在Java中使用Opengl或DirectX 有许多OpenGL绑定可用于Java。Java本身似乎不支持DirectX,而且似乎也没有提供绑定的库 在Java中使用Di

我的问题是:

  • 如何在Java中使用Opengl或DirectX
  • 在Java中使用DirectX时,它比Opengl有什么主要优势吗
  • 有没有一种不用API就可以做到这一点的方法
  • 我是否应该使用API,例如: 慢跑 LWJGL
  • JavaFX对制作3D东西有用吗
另外,我正在使用Windows。 有没有其他方法来绘制3D对象

如何在Java中使用Opengl或DirectX

有许多OpenGL绑定可用于Java。Java本身似乎不支持DirectX,而且似乎也没有提供绑定的库

在Java中使用DirectX时,它比Opengl有什么主要优势吗

我认为DirectX与OpenGL相比处于劣势,因为它在Linux或OSX上缺乏支持。如果您想使用Java编写跨平台游戏,我建议您看看OpenGL

有没有一种不用API就可以做到这一点的方法

我猜你指的是这里的图书馆。Java为绘图提供了API:。如果你想写游戏,并且通常从计算机图形开始,这可能是一个很好的起点。Java不作为标准库的一部分为OpenGL或DirectX提供绑定

我应该使用诸如:JOGL LWJGL之类的API吗

我对LWJGL有很好的经验。因此,如果您想尝试使用OpenGL,我建议您使用它们的绑定

JavaFX对制作3D东西有用吗


根据我的经验,JavaFX仍然有一些bug(在尝试它时遇到了几个bug)。我不知道它在做3D图形时效果如何。

JOGL是OpenGL和OpenGL ES API的Java绑定。我从2006年开始使用JOGL,我对它非常满意,正如您所看到的,它很容易安装。它适用于桌面和嵌入式环境,也支持Android,几乎所有主要的中高级API都使用它,包括、、Xith3D、。。。允许在使用纯Java2D编码时使用OpenGL,而无需了解OpenGL

我同意Bartvbl关于JavaFX3DAPI的观点,它明显比我上面引用的API差


JOGL是OpenGL和OpenGL ES API的唯一统一Java绑定。它既适用于游戏,也适用于其他应用(CAD,…),因为它支持多个显示器、多个屏幕和多个显示器。如果您想支持操纵杆,您可以将其与JInput一起使用。

您确实需要一个可以与本机接口对话的库,因此您不必在自己的代码中这样做。如果你选择OpenGL,你的程序很容易移植到其他平台。我不知道你想实现什么,但如果你只是想在3D中呈现一些简单的东西,你可能会给JavaFX一个机会:我希望唯一投票否决我的答案的人告诉我原因。我想这是因为这个答案有点偏颇。“我对它很满意”同样,它也不能回答整个问题。我仍然认为这个答案是有用的,一个答案通常比没有答案好。我回答了你的问题,我给了你一个详细教程的链接,解释了如何安装JOGL,没有人能很快解释如何使用OpenGL,因为这不是你能在几分钟内学会的东西,我们的wiki中有许多指向一些教程的链接。你问过是否有不同的方法来绘制3D对象,我提到了许多基于JOGL的3D引擎。我的答案并不比Bartvbl的更偏颇,我谈到JavaFX3DAPI是因为Veluria提到了它。我想你是对的。当我得到15分时,我可能会投赞成票。还有,我确实学过慢跑!原因:名称比LWJGL短!(开玩笑)是的,期待非建设性海报的建设性反馈是愚蠢的。