【问题标题】:How to add .obj model to JME如何将 .obj 模型添加到 JME
【发布时间】:2015-06-23 20:12:03
【问题描述】:

由于某种原因,我很难弄清楚如何将 obj 模型添加到 JME。我是 JME 的新手,之前没有导入模型(示例资产教程除外)。

我在 Blender 中创建了一个基本模型并将其导出为 obj。我将 obj 添加到 project/assets/models 文件夹,并将 mtl 添加到 materials 文件夹。不幸的是,当我运行程序时,我仍然无法看到模型。场景呈现黑色。我可以看到在 JME 中创建的 1x1x1 立方体。

该对象是一个默认正方形,另一个正方形与之相交。两个方块都有默认纹理。

public class TestImport extends SimpleApplication {
    public static void main(String[] args){
        TestImport app = new TestImport();
        app.start();
    }

    @Override
    public void simpleInitApp(){
        Spatial object = assetManager.loadModel(“Models/TestingOBJ/TestingOBJ.obj”);
        rootNode.attachChild(object);
        DirectionalLight sun = new DirectionalLight();
        sun.setDirection(new Vector3f(-2f,-2f,-2f).normalizeLocal());
        rootNode.addLight(sun);
    }
}

请帮忙!

【问题讨论】:

    标签: models blender jmonkeyengine .obj sketchup


    【解决方案1】:

    纹理不会导出到 .obj 文件中,因此您尝试在 JME 中查看未纹理化的资产。尝试使用资产管理器加载模型后向对象添加材质。

    public class TestImport extends SimpleApplication {
        public static void main(String[] args){
            TestImport app = new TestImport();
            app.start();
        }
    
        @Override
        public void simpleInitApp(){
            Spatial object = assetManager.loadModel(“Models/TestingOBJ/TestingOBJ.obj”);
            Material mat_default = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");
            object.setMaterial(mat_default);
            DirectionalLight sun = new DirectionalLight();
            sun.setDirection(new Vector3f(-2f,-2f,-2f).normalizeLocal());
            rootNode.addLight(sun);
        }
    }
    

    为了让 JME 知道在哪里可以找到它们,请确保您已将资源放置在 assets/Textures/ 文件夹中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-17
      • 1970-01-01
      • 2022-08-16
      • 1970-01-01
      • 2023-03-27
      • 2017-09-23
      • 1970-01-01
      相关资源
      最近更新 更多