首页 > 解决方案 > 导出搅拌机文件以在 three.js 中使用

问题描述

我试图弄清楚如何blend在我的 three.js 代码中使用模型。

我的代码如下所示:

const loader = new THREE.JSONLoader();
loader.load( "models/test.blend", function(geometry){
  let material = new THREE.MeshLambertMaterial({color: 0x55B663});
  mesh = new THREE.Mesh(geometry, material);
  scene.add(mesh);
});

什么都没有显示。我能找到的每个教程都将我指向这里,现在已弃用,我在文档中找不到任何内容。

我也尝试过使用dae文件并按照此处的答案进行操作,但这也不起作用。我用new THREE.ColladaLoader();来尝试加载这个文件。

标签: three.jsblender

解决方案


专门阅读 它,它解决了一个工具:

https://github.com/KhronosGroup/glTF-Blender-Exporter

加载 3D 模型

3D 模型有数百种文件格式,每种格式都有不同的用途、各种功能和不同的复杂性。尽管 three.js 提供了许多加载器,但选择正确的格式和工作流程将在以后节省时间和挫败感。某些格式难以使用,实时体验效率低下,或者目前根本不完全支持。

本指南提供了为大多数用户推荐的工作流程,以及如果事情没有按预期进行时如何尝试的建议。

开始之前 如果您不熟悉运行本地服务器,请先从如何在本地运行事物开始。通过正确托管文件可以避免查看 3D 模型的许多常见错误。

推荐的工作流程 在可能的情况下,我们推荐使用 glTF(GL 传输格式)。.GLB 和 .GLTF 版本的格式都得到很好的支持。由于 glTF 专注于运行时资产交付,因此传输紧凑且加载速度快。功能包括网格、材质、纹理、皮肤、骨架、变形目标、动画、灯光和相机。

这是来自上面的链接和 THREE.js 文档。其中解释说,他们不赞成这样做以提高工作流程的生产力,这意味着它无论如何都不能很好地工作......

您提供的链接具有用于将搅拌机模型导出为 glTF 的替代资源,由于其紧凑的尺寸和速度,建议用于传输


推荐阅读