1

我正在使用 FXyz 库将模型(obj 格式)作为三角形网格导入到我的程序中。我想将这些 Trianglemesh 对象转换为 PolygonMeshes,以便它们可以用作 SkinningMeshes。此过程是否有特定的工作流程?

编辑:我使用 org.fxyz3d.importers.obj.ObjImporter 作为我的 OBJ 加载器。我正在 Blender 2.65 中创建和导出我的模型。Blender 2.65 使用 Wavefront 作为格式。

我最初尝试使用 HandImporter 方法以 ThreeJS 格式加载模型,但它给了我意想不到的结果。但是,OBJImporter 似乎运行良好。我想如果我可以加载 obj 模型并显示它们,那么作为最后的手段,我可​​以手动将骨骼附加到它们并为它们设置动画。

因为 PolygonMesh 在其任何构造函数中都没有使用 Trianglemesh,所以我假设正在发生某些事情,这可能需要事先进行一些转换。

这是我正在使用的代码片段:

    private void Load_Model3D(int i) throws MalformedURLException, IOException {
        
        
        String S = "data\\models\\" + i + "\\" + i + ".obj";
        File F = new File(S);
        if(F.exists()){
         
            
            //Load the Model:
            URL url = F.toURI().toURL();
            this.Model_3D_Arr[i] = FXYZ_Loader.load(url);
            
            //Grab the Trianglemesh from the Model3D using casting:
            MeshView mv = (MeshView) this.Model_3D_Arr[i].getMeshViews().get(0);
            TriangleMesh T = (TriangleMesh) mv.getMesh();
            
            //Convert Trianglemesh into PolygonMesh here:
            
            
        }else{
            
            System.err.println("File F does not exist! FXYZ: " + S);
            
        }
        
    }

再次感谢。:)

4

0 回答 0