如何在Java中使用Blender模型?

时间:2010-08-20 16:45:20

标签: java graphics blender

真的只是一个普遍的问题吗?

假设我正在制作游戏,并在Blender制作了角色模型。我如何在Java中使用这个模型?

我会以某种方式导入它吗?

感谢。

4 个答案:

答案 0 :(得分:11)

通常在混合器中制作模型时,您可以使用以下格式导出模型,以便稍后在您选择的游戏引擎中导入模型,您使用的格式与要求不同。

出口 - 导入周期通常被称为“资产管道”,您通常希望将其保持尽可能简单和自动化,因为这是您或您的艺术家将定期执行的操作。

因此,如果我们看一些特定的图形引擎和平台;

  • OGRE3D(或Ogre4J)支持自己的纯文本格式(.scene,.mesh.xml,.material.xml),以便加载场景,模型和材料。它还支持电枢动画等,还有一些支持直接加载.blend文件。见their documentation for blender
  • JmonkeyEngine支持直接加载OGRE3D .scene和.blend。它还有自己的二进制j3o格式,当你想打包游戏时可以转换成这些格式。有关具体示例,请see their tutorials

在决定如何使用模型时,可以考虑多种格式。然而,当它被导入时,选择的游戏引擎将其表示为内部结构,通常允许您与选择的确切格式分离。

由于要求可能会发生变化,所以选择使用的是不应该写在石头上,如果做得好,它不应该对项目产生相当大的影响。如果您正在编写自己的引擎,这也是您应该考虑的事项。

答案 1 :(得分:4)

Blender提供的输入/输出脚本可以为您提供帮助。

例如,Blend2Java是一组用于Blender的Python脚本,它将导出到Java XML,可以使用标准的java.beans.XMLDecoder类进行解码。

http://blend2java.sourceforge.net/blend2java-howto.html

处可以很好地了解如何执行此操作

答案 2 :(得分:4)

这是一个更好的主意:使用现有的Java 3D库(我强烈推荐dzzd)并使用库的内置函数加载模型。然后,您可以实际显示数据,而不仅仅是处理数据。从Blender来看,输出为3DS就是一件简单的事情。

答案 3 :(得分:3)

另一个解决方案:Java .Blend为Blender文件中的所有数据提供了类型安全的Java API。它甚至支持从Java中创建新的Blender文件;)