【问题标题】:How do I use Blender models in Java?如何在 Java 中使用 Blender 模型?
【发布时间】:2011-04-01 18:30:47
【问题描述】:

真的只是一个笼统的问题吗?

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

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

谢谢。

【问题讨论】:

    标签: java graphics blender


    【解决方案1】:

    通常,在搅拌机中制作模型时,您可以将模型导出为一种格式,以便您稍后将其导入您选择的游戏引擎中,您使用的格式因要求而异。

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

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

    • OGRE3D(或Ogre4J)支持它自己的纯文本格式(.scene、.mesh.xml、.material.xml)以加载场景、模型和材质。它还支持骨架动画,还支持直接加载 .blend 文件。见their documentation for blender
    • JmonkeyEngine 支持直接加载 OGRE3D .scene 和 .blend。它还拥有自己的二进制 j3o 格式,当您想要打包游戏时可以将其转换为这些格式。具体例子,see their tutorials

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

    选择使用哪个是也不应该一成不变的,因为需求可能会发生变化,如果做得好,它不会对项目产生相当大的影响。如果您正在编写自己的引擎,这也是您应该考虑的因素。

    【讨论】:

      【解决方案2】:

      这是一个更好的主意:使用现有的 Java 3D 库(我强烈推荐dzzd)并使用库的内置函数加载您的模型。然后,您不仅可以处理数据,还可以实际显示它。在 Blender 中,导出为 3DS 很简单。

      【讨论】:

        【解决方案3】:

        有一些可用于 Blender 的输入/输出脚本可以帮助您。

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

        http://blend2java.sourceforge.net/blend2java-howto.html 上对如何执行此操作进行了很好的概述

        【讨论】:

          【解决方案4】:

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

          【讨论】:

            猜你喜欢
            • 2010-12-21
            • 2019-03-01
            • 2015-07-19
            • 2020-11-17
            • 2013-08-08
            • 1970-01-01
            • 2016-04-22
            • 2016-01-23
            • 2012-02-10
            相关资源
            最近更新 更多