三.JS Blender 只导出单个对象

标签 three.js blender

我在 Blender 中的模型由许多对象组组成。模型以 .obj 格式从 C4D 导出到 Blender。每组对象都放置在 Blender 中的 Null 下。当我在 Three.js 中导出时,只有在 Blender 中最后选择的对象会被导出为 .json 文件。

我尝试选择几个不同的对象,但同样只能导出一个对象。我通过在编辑器中查看生成的 .json 文件来验证这一点。事实上,它显示只有一个对象正在被导出。

我将每个对象分开,我可以轻松地进行选择并将不同的 Material 应用于每个对象。过去,在从 C4D 导出 .obj 之前,我将所有对象组合成一个网格,并且一切都在 Blender 和生成的 .json 文件中运行良好

在 Blender 中,我所做的是尝试将所有对象链接到单个父对象,希望整个模型都能导出。这没有用。

我的问题是这是正常行为吗?

在 Blender 中为每个单独的部分应用 Material 后,如何将所有单独的部分转换为单个网格?

或者在处理多个对象时是否有某种导出设置错误,每个对象都有自己的空值?

最佳答案

在 Blender 中将对象分组在 Null(空)下时要小心。不久前,我用我的灯光设置尝试了这个,因为它通常是一个合乎逻辑的工作流程,但发现在 three 中构建场景时存在转换问题。 .

When I export in three.js, only the last selected object in Blender will be exported as a .json file.



这里的关键词是“最后选择”,这告诉我你可能没有点击 Scene导出的选项。默认情况下,导出只生成一个带有单个几何图形的 .json,它是 Blender 中的当前选择。

发布日志文件的输出有助于了解您的选择。您不需要为此粘贴整个内容,只需找到如下所示的一行(朝向日志顶部):
Three.Export - DEBUG: 
Scene().__init__(G:\cleanflight_json_test\cfc_gui_def_green_a.json, 
{'animation': False, 'cameras': False, 'embedGeometry': True, 
'faces': True, 'colors': False, 'influencesPerVertex': 2, 
'scene': True, 'faceMaterials': False, 'precision': 6, 'embedAnimation': True, 'lights': False, 'logging': 'debug', 
'scale': 1.0, 'frameStep': 1, 'bones': False, 'vertices': True, 
'uvs': False, 'copyTextures': True, 'geometryType': 
'geometry', 'mixColors': False, 'maps': False, 'compression': 
'None', 'normals': False, 'enablePrecision': False, 'materials': False, 
'skinning': False, 'morphTargets': False})

那至少会告诉我你的选择是什么

关于三.JS Blender 只导出单个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28203846/

相关文章:

python - 在 Blender 中创建拼图球体的方法是什么?

javascript - 无法渲染在 jQuery $.get 请求函数中添加到场景的三个 js 对象

three.js - THREE.Object3D : How to disable Raycast for Object, 不是 Material ?

html - three.js 正确混合 css3d 和 webgl

javascript - 动态获取 three.js 场景中的对象位置

python - 使用无限循环时 Blender 卡住

javascript - 如何在 Three.js 中与场景中的对象进行交互?

python - 在 blender 导入插件中导入多个文件

python - 将 G 力数据转换为旋转?

javascript - threejs 混合 json 导出 + 无法读取未定义的属性 'type'