JavaFX 8作为3D游戏引擎?

时间:2014-04-27 14:03:23

标签: java javafx 3d-engine javafx-3d

我想创建一个MMO 3D游戏,我正在寻找一个3D引擎,我的问题是关于 javaFX 8 ,我可以用它来渲染很多 3D立方体,模型和动画而不失去表现或最好使用 lwjgl

最后一个问题是:javaFX 8可以用作3D引擎吗?

4 个答案:

答案 0 :(得分:7)

回答你的问题:

  

我可以用它来渲染很多3D立方体,模型和动画而不会失去性能吗?

这对许多人来说(我认为)是个问题......虽然没有明确的答案,但仍有办法让它发挥作用。

例如我最近建立了一个简单的Cloth-Simulator, (第一个球体为顶点,然后是实际的TriangleMesh) 起初我采用了使用AnimationTimer进行更新循环的方法,它起作用,但只能达到一定范围的计算。

我的第二种方法是创建一个Timer,使用ScheduledService以固定的timeStep间隔并将其设置为在完成时更新UI。

在性能开始摇摆之前,我能够将顶点数量增加一倍。这是一个相当大的改进,因为我能够有20k顶点(不是我推荐它)。

您可以在youtube上看到结果:

ProtoType 1

ProtoType 2

Finished MeshView

所以,真正需要花费多少时间来创建解决方案。

  

可以 javaFX 8可以用作3D引擎吗?

再一次,这完全取决于您希望花多少时间来开发框架。我个人一直试图为此目的构建工具集, 并非所有事情都有效,但旅程只是解决方案的一半。

如果您对使用Cloth Simulation了解我的方法感兴趣,可以在此处找到所有来源:F(x)yzLib,以及许多其他有用的功能/形状等...

答案 1 :(得分:3)

是的,我认为JavaFX 8对于3D游戏来说足够快,但它在着色器方面并不是当前3D的最前沿。我一直试图掌握它,但它缺乏相机外观,就像你进入Three.js一样。

Lwjgl和JMonkeyEngine是目前用于Java 3D游戏开发的更好选择。

答案 2 :(得分:2)

我正在用JavaFX制作这个3D太空射击游戏: http://lightspeedpatrol.weebly.com/features-and-info.html 所以我可以告诉你,它大部分都有效,但是Allan提到的照明选项确实有限。这是一个很好的学习工具,因为这是我第一次做与3D相关的事情,但从长远来看,我认为我最好还是使用LWJGL。

答案 3 :(得分:-1)

javaFx非常适合简单的2D游戏,但在3D游戏中,lwjgl或jmonkeyEngine比javafx更好,我认为它对于3D游戏来说太慢了(但在非常简单的事情上它可能很好)