[英]Alternative to Java3D
我的同事正在使用Java3D来可视化有限元模拟的结果。 问题是Java3D似乎已经死了,这对OSX来说是一种痛苦。 这是我们寻找替代品的原因之一。 我们当前基于Java3D的实现已经做了很多工作,所以问题是离开Java3D需要付出多少努力。 JOGL是一个选项,但看起来很多工作。
有没有关于替代品的建议? 有这种迁移的经验吗?
JOGL提供对OpenGL函数的直接访问。 这些函数主要是低级绘制函数,在编程时必须处理OpenGL的“状态机”特性。
Java3D抽象了这个状态机。 它允许您定义图形对象树,放置在虚拟场景中,并由相机渲染。 使用这种树结构,这些图形对象的操作更容易。 然后,由Java3D来完成这个树并调用OpenGL绘图函数。
这种库叫做场景图 。 java中有很多场景图库,有些是在JOGL之上实现的。 我没有列表,但此关键字可以帮助您进行研究。
在我们的项目中,我们尝试了3到4个不同的库,但没有人满足我们的所有要求。 我们结束了编写自己的场景图库(在JOGL之上)。
如今,jMonkeyEngine,Ardor3D,jPCT或Xith3D是更好的选择。
JOGL确实是个不错的选择。 但是,它只是OpenGL的包装库。 这意味着你仍然需要自己做很多腿部工作。 如果您对此感到满意并且它适合您的需求,那实际上并不是那么困难。 但它可能有点耗时并且不知道您当前的代码库我不知道传输是多么容易。
但是你可以使用可能使用JOGL的引擎。 像JMonkey Engine这样的东西纯粹是一个例子。 如果你看,你肯定会找到其他人。 看看这些,它们的易用性和功能,看看哪种最适合你。 他们可能不会把所有工作都从你身上拿走,但他们可能会让它变得更容易一些。
另请参阅此Java 3D论坛主题:Java3D可行性问题... https://forums.oracle.com/forums/thread.jspa?threadID=2150209&tstart=15
八月,InteractiveMesh
我使用JOGL 2.0(这是一个用于OpenGL(和OpenGL-ES)API的低级Java绑定。我最近帮助某人恢复了Java3D。现在,它只依赖于JOGL 2.0而且效果更好,特别是在Mac OS X上你可以在这里找到源代码: https : //github.com/hharrison/java3d-core
让我们找点乐子。 它被重新积极维护;)
PS:我写了一篇详细的文章,解释了如何使用最新版本的Java3D(1.6)的位置 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.