来自 Blender 的 PNG 纹理文件,而不是 mtl 文件

Posted

技术标签:

【中文标题】来自 Blender 的 PNG 纹理文件,而不是 mtl 文件【英文标题】:PNG Texture File from Blender instead of a mtl file 【发布时间】:2018-03-02 08:27:07 【问题描述】:

我正在试用 Google 的 ARCore。但我无法将 Blender 中的 3D 模型导出为 obj 和 png 组合,而不是默认的 obj 和 mtl 组合。我对搅拌机有点陌生。我还尝试了 Stack Exchange 中的this,但无济于事。

【问题讨论】:

您是否尝试将 PNG 单独拖到项目窗格中?这将在 Materials 文件夹中创建一个材质。您可以将该材料添加到 OBJ(已被拖到项目选项卡中) 你找到解决办法了吗? @Regis_AG 不,我没有,我采用了统一方式,它对 3D 和 AR 建模有更好的支持。 【参考方案1】:

如果您尝试使用 ARCore,如果您关注的是 Sceneform,这可能是一个解决方案。

导出 .obj 和 .mtl 后,使用示例数据目录在 android 中创建一个文件夹(以避免这成为您项目的一部分)

在这个文件夹中添加 .obj 和 .mtl

转到 Android Preferences > Plugins 并搜索“Google Sceneform Tools (Beta)”

在 .obj 上单击右键可以选择“导入 Sceneform 资源” 这将创建已准备好使用的 .sfb 和 .sfa 文件。

在您的 App Gradle 中,您应该会找到如下新行:

sceneform.asset('sampledata/NAME_OF_FILE.obj',
    'default',
    'sampledata/NAME_OF_FILE.sfa',
    'src/main/assets/NAME_OF_FILEl')

【讨论】:

以上是关于来自 Blender 的 PNG 纹理文件,而不是 mtl 文件的主要内容,如果未能解决你的问题,请参考以下文章

Three.js png 纹理 - alpha 呈现为白色而不是透明

将模型从 Blender 导出到 Three.js 时没有纹理

Three.js 导出没有纹理的 Blender 模型

从 obj 文件加载时显示单色而不是纹理

没有纹理的 ThreeJs 和 Blender 模型

从 Blender 导出多个 .fbx 文件