如何在C#中加载关联MTL(纹理)的Obj

时间:2018-05-29 17:32:14

标签: c# textures helix-3d-toolkit

我尝试使用mtl(纹理)加载obj。 我正在使用helixtoolkit

        ObjReader CurrentHelixObjReader = new ObjReader();
        objmodel.Content = CurrentHelixObjReader.Read(@"C:...");

.obj可以工作,但总是灰色

.mtl文件位于同一文件夹中。

任何人都知道如何实现这一目标......

1 个答案:

答案 0 :(得分:0)

我使用Helix加载.obj文件的方式如下。

首先,我创建一个 ModelImporter 对象。 ModelImporter对象处理文件中模型的加载。

然后,我简单地调用新ModelImporter对象的 Load 方法,将要导入的.obj文件的文件路径作为字符串传递。 Load 方法返回一个 Model3DGroup ,因此我将返回的值捕获到Model3DGroup对象中。

ModelImporter importer = new ModelImporter(); 

Model3DGroup group = importer.Load(filePath);

仅此而已。 ModelImporter的 Load 方法可以正确导入.obj文件。该方法中有逻辑来确定您要导入的文件,因此您不必自己担心。

对于.mtl文件,只要.mtl文件与.obj文件位于同一目录中,HelixToolkit也应为您处理该文件。我无需执行任何其他操作即可使其工作。